Thema Arrays Sonntag, 20.4.2008, 22:36:47 Uhr
Arrayeinträge zählen und sortiert nach Häufigkeit ausgeben Ich habe ja hier darüber geschrieben, wie man doppelte Arrayeinträge aussortiert und dabei die Reihenfolge beibehalten kann. Anhand des Beispieles fiel mir dann noch ein kleines Script ein, das man vielleicht öfters mal brauchen kann:Inhalte eines Arrays nach Häufigkeit sortieren.
Mein Script sieht folgendermaßen aus:
@a=qw(peter heiner franzl peter karin heike mia franz mia otto);
map {$hash{$_}++} @a;
@sortiert = map { $_->[0] } sort { $b->[1] <=> $a->[1] } map { ["$_ $hash{$_}mal", $hash{$_}] } (keys %hash) ;
print join ("\n",@sortiert);
|
Weiterlesen...
Samstag, 19.4.2008, 18:27:38 Uhr
Doppelte Elemente aus Array entfernen - Und die Reihenfolge beibehalten
Aufgrund einer Leseranfrage, wie man denn doppelte Elemente eines Arrays entfernen kann, die Reihenfolge aber beibehalten werden soll, hier mein kleiner Lösungsvorschlag.
Mit Hash-Slices und so hat dies nichts zu tun, vielmehr wird grep verwendet.
@a=qw(7 1 2 3 4 5 7 4 6 7 8 9 10);
@new=grep{$hash{$_}++; $hash{$_}<2} @a;
print join("\n",@new);
|
Weiterlesen...
Mittwoch, 5.12.2007, 15:01:45 Uhr
Die Schwartzsche Transformation - Arrays sortieren nach mehreren Kriterien Oftmals hat man das Problem, daß man Arrayinhalte sortieren will.
Hat man nur einzelne Werte, wie zum Beispiel Nachnamen, kann dies bequem per sort() erledigt werden.
Etwas komplizierter wird es, wenn man nach mehreren Kriterien sortieren möchte, zum Beispiel nach Nachnamen und Vornamen. Weiterlesen...
Dienstag, 13.11.2007, 12:11:24 Uhr
Prüfen, ob ein bestimmter Wert in einem Array vorhanden ist Also, ich hab ja hier das Beispiel gebracht, wie man von einem Array die einzigartigen Elemente herausfinden kann. Im Zusammenhang dazu fiel mir dann noch eine Kleinigkeit ein, nämlich, wie man feststellt, ob ein Array einen bestimmten Wert enthält.
Die Methode, die einem normalerweise zuerst einfallen würde, ist diese (oder so ähnlich) Weiterlesen...
Samstag, 28.4.2007, 00:00:31 Uhr
Hash of Arrays - Oder: Wie bilde ich ein Hash aus Arrays Nachdem ich hier das Thema schonmal aufgegriffen habe (etwas versteckt vielleicht), möchte ich das Thema nochmal aufgreifen: Hash of Arrays, also ein Hash, der Arrays enthält.Hört sich nun etwas verquert an, ist aber ne schöne und effektive Sache, wenn man viele Daten im Systemspeicher verwalten will.
Anlegen kann man so ein Array in einem Hash wie gewohnt per push(), also zum Beispiel
push (@{$hashname{$bezeichner}},$wert); # oder per Wertzuweisung @{$hashname{$bezeichner}}=@array;
|
Weiterlesen...
Mittwoch, 11.4.2007, 13:30:47 Uhr
Skalar durchsuchen und gefundene Ergebnisse in Array schreiben Mal wieder etwas aus der Praxis: Ich stand (stehe) vor dem Problem, daß ich ein Skalar, oder genauer gesagt dem HTML-Quelltext einer Webseite nach Links durchsuchen mußte. Ich suchte also eine Möglichkeit, möglichst schnell alle Links nach dem Schema <a href="test.htm" .....>Linktext</a> zu finden und wenns denn geht gleich in ein Array zu schubsen.
Weiterlesen...
Montag, 9.4.2007, 00:00:49 Uhr
grep - Listen durchsuchen in Perl Syntax grep {BLOCK} ARRAY; oder grep (EXPR, ARRAY); bzw. grep EXPR,ARRAY;
Der Befehl grep ist ein sehr mächtiger und universeller Befehl, mit dem sich bestimmte Einträge in Arrays finden lassen. Weiterlesen...
Dienstag, 20.3.2007, 00:01:37 Uhr
join() - Array in Skalar umwandeln - Wie mache ich aus einer Liste eine Zeichenkette? Mit dem join()-Befehl läßt sich aus einem Array, also einer Liste von Werten, ein Skalar, also eine Zeichenkette, herstellen. Dies geschieht relativ einfach durch den Aufruf mit
Es wird also aus einem Array durch verknüpfung mit einem Verbindungszeichen ein Skalar produziert. Etwas trocken in der Theorie, darum ein Beispiel: Weiterlesen...
Montag, 19.3.2007, 11:05:32 Uhr
Praxisbeispiel: Wörter extrahieren aus Text Vor Kurzem stand ich vor dem Problem, daß ich einen Text zerlegen wollte, und zwar so, daß alle einzelnen Wörter in einem Array landen. Oder genauer Mache aus: Dies ist ein Testtäxt!a!b!c! aäöü ß Ä Ö Ü Ä!Ö!Ü! 123456 1 2 3 4 5 6 !§%& Weiterlesen...
Freitag, 23.2.2007, 10:12:34 Uhr
Arrays in Perl - Besonderheiten Was ein Array in Perl ist sollte ja hinlänglich bekannt sein.
Es gibt allerdins auch noch einige Besonderheiten, auf die man hier hinweisen könnte:
Anzahl der Elemente eines Arrays Will man wissen, wie viele Elemente in einem Array vorhanden sind, kann man dies ganz einfach mit: Weiterlesen...
|