my @array1 = qw/a a b b c c d d/; my @array2 = qw/ c c d d e e f f g g/; my @array3 = (); my %filter = (); foreach (@array1) { $filter{$_} = 1; } foreach (@array2) { if (exists($filter{$_}) && 2 == ++$filter{$_}) { push(@array3,$_); } } print join(' ',@array3);