in reply to howto map/grep a complex structure
Try this:
foreach my $hk ( keys %{ $href } ) { print "$hk\n" for grep { /^$search$/ } @{ $href->{$hk}->{'member'} + }; }
Output:#! perl use strict; use warnings; use feature qw/ say /; my $href = { foo => { member => [ 'fred', 'barney', 'wilma', 'betty' ], }, bar => { member => [ 'mickey', 'minnie' ], }, }; my $search = 'wilma'; foreach my $hk ( keys %{ $href } ) { say $hk for grep { /^$search$/ } @{ $href->{$hk}->{'member'} }; } __END__
[21:57][nick:~/monks]$ perl 1140148.pl foo
Update: added output
|
|---|