Thread Zeilen einlesen und nach dritter Spalte sortieren (48 answers)
Opened by leo11 at 2008-08-14 08:06

Gast Gast
 2008-08-15 08:50
#113523 #113523
leo11+2008-08-15 05:38:14--
@Hagen:
Danke für dieses Bsp. es hat mir sehr weitergeholfen.

Dieses return -1 if $$a[2]<$$b[2]; ist mir noch unklar. Bedeutet das: Vergleiche das Element der dritten Spalte der Zeile x mit dem Element der dritten Spalte der Zeile Y und gib -1 zurück wenn es kleiner ist?
Genau. "sort" schiebt einen Arrayeintrag nach oben wenn, die Vergleichsopperation -1 zurück liefert, lässt den Eintrag wo er ist wenn 0 gemeldet wird und schiebt bei 1 nach unten. (oder umgekehrt ... mußt du ausprobieren wie herum er sortiert :) )

leo11+2008-08-15 05:38:14--
Bedeutet die Zeile:
Code (perl): (dl )
@zeilen=sort{$a->[2] <=> $b->[2]}@zeilen

Das eine Zeile nach oben verschoben wird, wenn das Element in der dritten Spalte kleiner ist?
"<=>" liefert -1 zurück wenn a<b, 0 wenn a==b und 1 wenn a>b. (oder umgekehrt ... schwehr zu behalten das) Ähnliches gilt für "cmp" nur halt für Buchstaben.

View full thread Zeilen einlesen und nach dritter Spalte sortieren