linux-l: Regular Expressions
Joerg Haertwig
haertwig at cns.mpg.de
Do Okt 26 14:33:13 CEST 2000
> Vorsicht: "^From" matched auch "From:".
"^From" findet nur "From" am Zeilenanfang.
> Ausserdem hatte ich das so verstanden, dass "-Team" ganz am Ende
> steht.
ich verstand es so
Michael Weber <mweber at hadag-gruppe.de>:
Einzige Gemeinsamkeit ist das
sie mit "From" anfangen und mit "-Team" aufhoeren.
alle nicht gewollten mails fangen mit "^From" an und enden auf "-Team".
demzufolge das input file von unten nach oben durchsuchen und die
$schalter (ich hatte sowieso das "!" vergessen) tauschen.
somit wird "-Team" gefunden und alles bis zum naechsten "^From" (inkl.
der trefferzeilen) im output file unterdrueckt.
open(FILE,...);
my @file = <FILE>;
close(FILE,...);
my @rev_file = reverse @file;
my $schalter = 0;
foreach (@rev_file) {
$schalter = grep("^-Team", $_);
$schalter = ! grep("^From", $_);
push @file, $_ if ! $schalter;
}
open(OFILE,...);
print OFILE reverse @file;
close(OFILE,...);
es muss natuerlich klar sein, dass die suchbegriffe "^From" und "^-Team"
alle nicht gewollten zeilen umschliessen muessen. sonst eben
spezifizieren.
hoffe es hilft, ciao
Mehr Informationen über die Mailingliste linux-l