$ perl -E 'my $x = "2.X"; my ($y, $z) = ($x =~ /^(\d+)(.*)$/); say $x; say ++$y . $z' 2.X 3.X #### $ perl -E 'my $x = "02.X"; my ($y, $z) = ($x =~ /^(\d+)(.*)$/); say $x; say ++$y . $z' 02.X 03.X #### $ perl -E 'say for sort qw{1.X 9.X}' 1.X 9.X $ perl -E 'say for sort qw{1.X 9.X 10.X}' 1.X 10.X 9.X $ perl -E 'say for sort qw{01.X 09.X 10.X}' 01.X 09.X 10.X #### U+00DC LATIN CAPITAL LETTER U WITH DIAERESIS