use strict; use warnings; use Data::Dump; my $HASH1 = { 'Alabama' => ['Andalusia', 'Anniston', 'Clanton', 'Eufaula', 'Auburn', 'Bessemer', 'Eufaula', 'Auburn', 'Bessemer' ], 'California' => ['Barstow', 'Barstow'], 'Georgia' => ['Darien'], 'New York' => ['Amsterdam', 'Coney Island', 'Coney Island', 'Beacon', 'Becon'] }; print "Values stored in anonymous arrays:\n"; dd $HASH1; my $HASH2; for my $key (keys %$HASH1) { ++$HASH2->{$key}{$_} for @{ $HASH1->{$key} }; } print "\nValues stored in anonymous hashes:\n"; dd $HASH2; #### 13:39 >perl 1780_SoPW.pl Values stored in anonymous arrays: { "Alabama" => [ "Andalusia", "Anniston", "Clanton", "Eufaula", "Auburn", "Bessemer", "Eufaula", "Auburn", "Bessemer", ], "California" => ["Barstow", "Barstow"], "Georgia" => ["Darien"], "New York" => ["Amsterdam", "Coney Island", "Coney Island", "Beacon", "Becon"], } Values stored in anonymous hashes: { "Alabama" => { Andalusia => 1, Anniston => 1, Auburn => 2, Bessemer => 2, Clanton => 1, Eufaula => 2, }, "California" => { Barstow => 2 }, "Georgia" => { Darien => 1 }, "New York" => { "Amsterdam" => 1, "Beacon" => 1, "Becon" => 1, "Coney Island" => 2 }, } 13:39 >