Für Perl gibt es ein Modul Sort::Naturally.
Ich muss nun aber noch testen, ob es meinen Erwartungen entspricht.
Ein Test:
#!perl
use warnings;
use strict;
use constant { NL => "\n" };
BEGIN {
use CGI::Carp qw(carpout);
open(LOG, ">error.txt") or die "Unable to append to error.txt: $!\n";
carpout(*LOG);
}
use Sort::Naturally qw(nsort);
my @unsorted = ( qw( 1.1 11.1 1,1 1#1 11 1\)1 11-1 11- 1a 1z 1-1 1+1 1-z ) , '1 1');
my @sorted = nsort @unsorted;
print join NL, @sorted;
<>;
exit;
gibt aus:
1a
1z
1-z
1 1
1#1
1)1
1,1
1.1
1+1
11 <----- warum
1-1 <----- warum
11-
11.1
11-1
Es ist merkwürdig, dass "1-1" oder "11" anders sortiert wird
Das Element 11 ist die einzige "Zahl".
mfg Beat
--
><o(((°> ><o(((°>
<°)))o>< ><o(((°>o
Der Valigator leibt diese Fische
><o(((°> ><o(((°>
<°)))o>< ><o(((°>o
Der Valigator leibt diese Fische