my %items = map { $_ => 1 } ( 'APPLES', 'SILVER', ); my %groups = ( 'cookies' => ['CHOCOLATE CHIP', 'PEANUT BUTTER'], 'previous metals' => ['SILVER', 'GOLD', 'PLATINUM'], ); my $lover; for my $group_name (keys(%groups)) { if ( grep $items{$_}, @{ $groups{$group_name} } ) { print "This guy loves $group_name.\n"; ++$lover; } } if (!$lover) { print "This guy loves nothing.\n"; }