my @elements = map { join "\0", padded($_), $_ } @original; @elements = sort { $a cmp $b } @elements; my @sorted = map { ( split /\0/, $_ )[1] } @elements; #### my @elements = map { ( split /\0/, $_ )[1] } sort { $a cmp $b } map { join "\0", padded($_), $_ } @original;