my @unsorted = ; my @sorted = sort { (my $first) = $a =~ m/chr(.+)/; (my $second) = $b =~ m/chr(.+)/; $first cmp $second || $first <=> $second } @unsorted;