in reply to Extracting elements from array
Well, since the first element in the arrayref doesn't contain a key named 'name', you'll have to deal with that somehow. But what you are looking for is map:
Fixing the warning:$ perl -wE' my $aref = [ { name => 'Fred' }, { name => 'Barney' }, { no_name => 'W +ilma' } ]; say for map { $_->{name} } @{ $aref }; ' Fred Barney Use of uninitialized value $_ in say at -e line 3.
$ perl -wE' my $aref = [ { name => 'Fred' }, { name => 'Barney' }, { no_name => 'W +ilma' } ]; say for map { $_->{name} || 'No name' } @{ $aref }; ' Fred Barney No name
|
|---|