Thread Komplizierterer Suchstring
(2 answers)
Opened by AndiS at 2008-02-25 10:12
Ich vermute mal, dass AndiS prüfen will, ob die jeweilige Zeile "gültig" ist, d.h. kein Kommentar, keine Leerzeile, usw. enthält.
Ich würde die Datei zeilenweise bearbeiten, jede Zeile aufsplitten und dann die einzelnen Werte überprüfen, ob sie nur gültige Zeichen enthält: Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 my $filename = 'config.txt'; open my $readh, '<', $filename or die "open(ro) $filename: $!\n"; while (my $zeile = <$readh>) { # zur Sicherheit Zeilenumbrüche und Leerzeichen entfernen $zeile =~ s|[\n\r\s]||g; (my $art, my $groesse, my $anzahl, my $typ) = split(/,/, $zeile); next if ($art !~ m|[BKMG]|); # nächste Zeile bearbeiten, falls in $art etwas anderes als B, K, M, G steht next if ($groesse !~ m|^\d+$|); # nächste Zeile bearbeiten, falls in $groesse etwas anderes als eine Zahl steht next if ($anzahl !~ m|^\d+$|); # nächste Zeile bearbeiten, falls in $anzahl etwas anderes als eine Zahl steht next if ($typ !~ m/^(READ)|(WRITE)$/); # nächste Zeile bearbeiten, falls in $typ etwas anderes als READ oder WRITE steht # Prüfung erfolgreich ... hier dann "Daten" bearbeiten ... } # while close $readh or die "close(ro) $filename: $!\n"; (ungetestet) Gruß
Hagen |