Thread Fehler in while-Konstrukt?
(4 answers)
Opened by Thomas at 2010-05-20 14:06
Hallo zusammen,
ich überprüfe gerade eine Auszahlungsliste und habe dabei verschiedene Mandanten, die a) einzeln auf die Anzahl der Fälle und b) auf die Gesamtzahl der Fälle überprüft werden müssen. Prüfkriterium für einen Fall ist dabei eine Regex, s.u. Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 my $anzahl_faelle_mandant = 0; my $anzahl_faelle_gesamt = 0; $zeile = 0; open($FH, "<$FHOUTAUSZAHLUNG") or die "open file: $!"; while($line = <$FH>) { $zeile++; chomp ($line); while ($line !~ /\s\sS U M M E N B L A T T/) { # falls die Zeile einen neuen Fall darstellt (BANK BLZ (8stellig)) if ($line =~ /BANK\s\d\d\d\d\d\d\d\d/) { $anzahl_faelle_mandant++; $anzahl_faelle_gesamt++; #print $line; } $line = <$FH>; chomp ($line); $zeile++; } #SUMMENBLATTBERECHNUNG print $zeile . ": " . $anzahl_faelle_mandant . "\n"; #alle Mandantenzähler wieder auf 0 setzen $anzahl_faelle_mandant = 0; } print "gesamt: " . $anzahl_faelle_gesamt; close $FH; Ich bekomme aber immer folgende Meldung, die Zeile 16991 ist die letzte im Dokument: Code: (dl
)
1 Use of uninitialized value $line in scalar chomp at H:/summenpruefung.pl line 549, <$FH> line 16991. Gleichzeitig komme ich nie zum letzten "print", da hab ich doch garantiert nen Fehler in der while-Verwendung, oder? Danke für Eure Hilfe! Last edited: 2010-05-20 14:35:29 +0200 (CEST) |