use strict; use warnings; use utf8; use Test::More tests => 1; my @in = split (/\n/, < 1 ); my @out; for my $line (@in) { if ($line =~ /nš ([\d]*),/) { $number = $1; } else { $number = ''; } push @out, $line unless $seen{$number}++; } is_deeply (\@out, \@want);