Thread Sortieren innerhalb einer TXT-Datei (2 answers)
Opened by Gast at 2003-12-14 16:39

Strat
 2003-12-14 17:56
#489 #489
User since
2003-08-04
5246 Artikel
ModeratorIn
[Homepage] [default_avatar]
wenn du das alles in einem @array hast, wo eine zeile einem arrayelement entspricht, koenntest du es folgendermaszen machen:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
my @arraySorted = 
 map { # nur die dritte spalte zurueckgeben, da die sortierkritierien
   $_->[3] # nicht mehr gebraucht werden
 }
 sort {
   $a->[0] <=> $b->[0] or # wenn vergleich punkte 0 ist, vergleiche siege
   $a->[1] <=> $b->[1] or # wenn vergleich siege 0 ist, vergleiche tordifferenz
   $a->[2] <=> $b->[2]
 }
 map { # $_ ist eine Zeile, die aufgesplittet wird
   my ($siege, $punkte, $tordifferenz) = (split(/;/, $_))[3,6,9];
   ( [$punkte, $siege, $tordifferenz, $_] ) # und als listenreferenz an sort gegeben wird
 }
 @array


der gewaehlte Weg ist die Schwartzian Transform; eine genauere Erklaerung findest du auf meiner HP unter Tips&Tricks -> Sortierungen\n\n

<!--EDIT|Strat|1071417445-->
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/

View full thread Sortieren innerhalb einer TXT-Datei