Thread Logdatei filtern mit regulären Ausdrücken
(16 answers)
Opened by cohama at 2012-02-28 11:24
Kleine Variation: Ich würde den else-Zweig nutzen und mir damit den Match in der zweiten Abfrage sparen. Auch das Array sollte evtl. nach der Verarbeitung wieder geleert werden.
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 # ... my $flag = 0; while (my $line = <InFile>) { if ( $line =~ m{$BString} .. $line =~ m{$EString} ) { # Merker setzen, ob bestimmter String im Block vorkommt $flag = 1 if $line =~ m{$NoString}; push @data, $line; } else { # Blockende ist erreicht if ( $flag == 1 ) { # Merker ist gesetzt # tu was extra mit @data # ... $flag = 0; } @data = (); } } # ... |