C:\test>perl my @d = qw(AAA30 BBC5 SHT12H DAL33B BBC49 AAA31 DAL33A BBC6 SHT12G BBC50); my $last = ""; foreach my $v ( sort {$a cmp $b} @d) { my $l1 = $last; my $l2 = chop $l1; print "$last,$v\n" if $v eq $l1.++$l2; $last = $v; } ^Z AAA30,AAA31 DAL33A,DAL33B SHT12G,SHT12H