my %states_with_comments =
map { ((split /=/, $$_[0], 2)[1], 'hurray!') }
grep { $$_[2] }
map { values %$_ }
values %$db;
print "states are: ", (join "; ", sort, keys %states_with_comments), "\n";
####
root@orion:/tmp# ./mytest.pl
states are: West Virginia; Washington
####
my %states_with_comments = # and finnaly we will take keys from hash
map { ((split /=/, $$_[0], 2)[1], 'hurray!') } # split first element on satename= and name, take name, make %key => 'hurray!"
grep { $$_[2] } # test if array has 3-rd element that is comment
map { values %$_ } # take arrays that are below PR, AK, WA, WV
values %$db; # make list of hashes below numbers 99155, 26134
####
my %states_with_comments =
grep { warn Dumper({"finally" => $_}); 1; }
map { ((split /=/, $$_[0], 2)[1], 'hurray!') }
grep { warn Dumper({"after filtering" => $_}); 1; }
grep { $$_[2] }
grep { warn Dumper({"second step is" => $_}); 1; }
map { values %$_ }
grep { warn Dumper({"first step is" => $_}); 1; }
values %$db;
####
root@orion:/tmp# ./mytest.pl
$VAR1 = {
'first step is' => {
'PR' => [
'state_name=Puerto Rico',
'county_names_all=Adjuntas|Utuado'
],
'AK' => [
'state_name=Alaska',
'county_names_all=Ketchikan Gateway|Prince of + Wales-Hyder'
],
'WA' => [
'state_name=Washington',
'county_names_all=Pend Oreille|Spokane|Lincol +n|Adams',
'comments=America/Los_Angeles'
]
}
};
$VAR1 = {
'first step is' => {
'WV' => [
'state_name=West Virginia',
'county_names_all=Wirt|Wood|Jackson|Ritchie| +Calhoun',
'comments=America/New_York'
]
}
};
$VAR1 = {
'second step is' => [
'state_name=Puerto Rico',
'county_names_all=Adjuntas|Utuado'
]
};
$VAR1 = {
'second step is' => [
'state_name=Alaska',
'county_names_all=Ketchikan Gateway|Prince of + Wales-Hyder'
]
};
$VAR1 = {
'second step is' => [
'state_name=Washington',
'county_names_all=Pend Oreille|Spokane|Lincol +n|Adams',
'comments=America/Los_Angeles'
]
};
$VAR1 = {
'second step is' => [
'state_name=West Virginia',
'county_names_all=Wirt|Wood|Jackson|Ritchie| +Calhoun',
'comments=America/New_York'
]
};
$VAR1 = {
'after filtering' => [
'state_name=Washington',
'county_names_all=Pend Oreille|Spokane|Lincol +n|Adams',
'comments=America/Los_Angeles'
]
};
$VAR1 = {
'after filtering' => [
'state_name=West Virginia',
'county_names_all=Wirt|Wood|Jackson|Ritchie| +Calhoun',
'comments=America/New_York'
]
};
$VAR1 = {
'finally' => 'Washington'
};
$VAR1 = {
'finally' => 'hurray!'
};
$VAR1 = {
'finally' => 'West Virginia'
};
$VAR1 = {
'finally' => 'hurray!'
};
states are: West Virginia; Washington