my @array = ( [ { 'State' => 'Maine', 'Town' => 'Portland' }, { 'State' => 'New Hampshire', 'Town' => 'Concord' } ], [ { 'State' => 'Florida', 'Town' => 'Jacksonville' }, { 'State' => 'North Carolina', 'Town' => 'Waynesville' } ] ); foreach my $group (@array) { # which contains refs to arrays foreach my $city (@$group) { # which contains refs to hashes print($city->{State}, "\n"); # with key State. } }