in reply to Hash Multiple values for a key-Filtering unique values for a key in hash
Note that map allows grep to search the entire hash, as required by your later question.use strict; use warnings; use Data::Dumper; my $HASH1 = { 'California' => [ 'Barstow' ], }; my $new_value = 'Barstow'; if (!grep {/$new_value/} map( @{$_}, values %$HASH1)){ push @{$HASH1->{California}}, $new_value; } $new_value = 'other'; if (!grep {/$new_value/} map( @{$_}, values %$HASH1)){ push @{$HASH1->{California}}, $new_value; } print Dumper($HASH1);
|
|---|