|
|
 |

|

 |

| Community » Perl: Allgemeines Forum |
|
Wieder mal sortieren
|
Seitenanfang |
| Hallo Habe alle Beiträge zum Thema sortiren duchstudiert, aber keine Lösung gefunden. Die zu sortierenden Variablen sind Zahlen und Strings, die Strings beinhalten Zahlen und Buchstaben. Es geht um folgende Sortierreihenfolge: zuerst Buchstaben, dann Zahlen aufsteigend, wenn jetzt eine Zahl mit Buchstaben kommt, dann Zahlen mit Buchstaben...usw. Beispiel der Ausgabe: Beta77 Halifax 4 Meas 1 Meas 3 3 5 6a 6b 10 10zeus 13 13a 13c 122 124 200imp 1 200imp 3 Danke für Hilfe
Datum: 27.03.2006-15:06

|
re: Wieder mal sortieren
|
Seitenanfang |
| http://perldoc.perl.org/functions/sort.html #!/usr/bin/perl use strict; my @daten = ( '200imp 3', 'Halifax 4', '5', '124', '6a', '6b', '10', 'Meas 3', '10zeus', '13', '13a', 'Beta77', '13c', 'Meas 1', '122', '200imp 1', '3', ); foreach my $zeichen ( sort { $a <=> $b || $a cmp $b } @daten ) { print $zeichen, "\n"; } Ergibt : -------- Beta77 Halifax 4 Meas 1 Meas 3 3 5 6a 6b 10 10zeus 13 13a 13c 122 124 200imp 1 200imp 3
Datum: 27.03.2006-18:07

|
re: Wieder mal sortieren
|
Seitenanfang |
| Mach Dir einfach klar, dass Buchstaben auch nur Zahlen sind. Mach Dir auch klar, dass die Zahlen *vor* den Buchstaben kommen. ;) Schau Dir mal eine ASCII Tabelle an, dann kommst von selber drauf. Du verschachtelst die Sortierschleife eben so, dass die Buchstaben vor den Zahlen dran sind. -uw
Datum: 27.03.2006-18:10

|
re: Wieder mal sortieren
|
Seitenanfang |
| Danke für Antwort, hat mir sehr geholfen
Datum: 29.03.2006-07:31

|
|

|

|

|
 |

|

|
|