#!/usr/bin/perl -w use strict; my @values = ('CHOCOLATE CHIP', 'PLATINUM', 'GASOLINE', 'GOLD'); my %hash = ( 'COOKIE' => ['CHOCOLATE CHIP', 'PEANUT BUTTER'], 'METAL' => ['SILVER', 'GOLD', 'PLATINUM'], ); THING: foreach my $thing (@values) { foreach my $type (keys %hash) { if (grep{$_ eq $thing}@{$hash{$type}} ) { print "$thing is a $type\n"; next THING; } } print "$thing is UNKOWN\n"; } __END__ CHOCOLATE CHIP is a COOKIE PLATINUM is a METAL GASOLINE is UNKOWN GOLD is a METAL