Thread Logische Operatoren (9 answers)
Opened by Gast at 2008-04-08 19:10

Gast Gast
 2008-04-08 19:10
#108092 #108092
Habe da ein Problem mit der Reihenfolge der Ausführung von Anweisungen in Perl.
Ich will eine Datei durchsuchen, dazu habe ich folgenden Code:
Code: (dl )
1
2
3
while (<>) {
print if grep {/FOO/} $_;
}

Funktioniert einwandfrei. Ersetze ich dagegen die Anweisung durch:
Code: (dl )
grep {/FOO/} $_ && print;

erhalte ich nicht nur die gefundenen Zeilen, sondern alle.
Ein Klammern des GREPs löst das Problem, aber so richtig verstehen tu ich das Ganze nicht.

Wieso funktioniert meine 2te Anweisung nicht (so, wie ich will)?

View full thread Logische Operatoren