Thread Natürlicher Sort, aber nicht mit @sorted = sort @unsorted
(30 answers)
Opened by Student87 at 2013-02-05 17:52
Ou mann ich hatte grade ne Reihe von Aha-Erlebnissen :-)
FIFO, du hattest recht. Ich benutze ein file, das von anderen Leuten erstellt wurde - scheinbar unter Windows. Hab grad gelernt, dass bei denen \n = \r\n ist. Das hat mich etwas gestresst mit diesem mysteriösen \r ... Hinzu kommt, dass man $1 nicht verändern darf. Zeile 6&7 meines Codes produzieren also auch ne Fehlermeldung. @Linuxer: Mit \S schneidet er nur das \n ab, aber das \r bleibt. Meine Lösung sieht jetzt folgendermaßen aus: Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 my @sorted = map{$_->[0]} sort {$a->[1] <=> $b->[1]} map{ /chr(.+)/; my $x = $1; if ($x eq "X\r\n") {$x=23} if ($x eq "Y\r\n") {$x=24} $_=[$_,$x] } @unsorted; Gibt es ein Windows-chomp in Perl, das mir direkt \r\n entfernt? Edit: Finde nämlich das \r\n in den If-Konditionen etwas hässlich :-D Und außerdem ist für z.B. chr2 $x="2\r\n", was auch irgendwie unsauber ist ... Last edited: 2013-02-07 16:14:55 +0100 (CET) |