use strict; use warnings; my %fruit = ( 'apple' => ['red','green'], 'kiwi' => 'green', 'banana' => 'yellow', ); for my $search ("green","red" ){ my @matches = grep { $search ~~ $fruit{$_} } keys %fruit; print "\n\n Matches for <$search> = @matches\n\n"; }