my @in = qw/ test foo test bar baz foo test /; my %multiples; my %out; for (@in) { if ($multiples{$_} == 1) { $out{$_} = 1; } $multiples{$_} = 1; } print "$_\n" for keys %out;