Matti Maekitalo: suchen und ausgeben aus mit Pipes getrennter txt Datei

Beitrag lesen

use Mosche;

471|Road Trip|06:16:21|R|http://bla/review.cgi?roadtrip|a|1
470|Lifeforce|00:42:28|L|http://bla/review.cgi?lifeforce|a|1
469|Demon Knight|00:42:03|D|http://bla/review.cgi?demonknight|a|0|

Schon mal die Funktion split benutzt? Dann wird es jetzt Zeit.

my @aoa;
foreach (@liste) {
  my @tmp = split(/|/, $_);
  push (@aoa, @tmp);
  # oder beides in einem:
  # push(@aoa, [ split(/|/, $_) ]);
}

Jetzt hast du einen Array of Arays. Du greifst folgendermassen auf die einzelnen Elemente zu:

mit @zeile = @{$aoa[0]} bekommst du die erste Zeile.

mit $eintrag = $aoa[0][0] bekommst du den ersten Eintrag der ersten Zeile.
Das gleiche mit
$eintrag = $aoa[0]->[0] (meines Erachtens schöner).

Siehe dazu 'perldoc perlref' und 'perldoc -f split' (auch bei http://www.perldoc.com).

use Tschoe qw(Matti);

--

  Anyone who quotes me in their sig is an idiot. -- Rusty Russell.