# given two arrays you want to compare for common elements, @a1 & @a2 ... my %common; undef @common{@a1}; delete @common{@a2}; my @common = keys %common; #for example: DB<1> @a1 = qw(a b c d e) DB<2> @a2 = qw(a c e ) DB<3> undef @common{@a1} DB<4> x \%common 0 HASH(0x8408418) 'a' => undef 'b' => undef 'c' => undef 'd' => undef 'e' => undef DB<5> delete @common{@a2} DB<6> x \%common 0 HASH(0x8408418) 'b' => undef 'd' => undef DB<7> print join " ", keys %common b d