use Mosche;
Der "perlsche" Weg waere z. B. eine Loesung mit grep:
my ($zeile) = grep {
my @lines = split /;/,$_;
$lines[2] eq 'gesuchter wert';
} <FILE>;
Das macht im Grunde dasselbe, aber etwas kuerzer :-)
Trifft deine Lösung allerdings nur, wenn genau _einmal_ der gesuchte Wert auftritt. Wenn diese Spalte nicht eindeutig ist, dann ist diese Lösung so nicht drin, denn da werden Lösungen verloren. Mit uneindeutigen Spalten bekommst du die gewünschten mit
my @zeilen = grep {# wie oben #} <FILE>;
Die _eigentliche_ Perl Lösung wäre die Benutzung von DBD::CSV, dem Grundsatz folgend, möglichst viel in (Standard-) Module auszulagern.
use Tschoe qw(Matti);