linux-l: Re: regexp

Jens Dreger jens.dreger at physik.fu-berlin.de
Di Aug 22 21:35:30 CEST 2000


On Tue, Aug 22, 2000 at 02:30:35PM +0000, Ralf Cirksena wrote:
> Rolf Buenning wrote in <20000822090620.A185 at rolf-buenning.myfqdn.de>:
> 
> Hi Rolf,
> 
> > Beispiel Juli
> > soll liefern 17.07. und alle folgenden bis 31.07.
> > 1. Ziffer [1-3]
> > 2. Ziffer [0-9]  wegen 20., 21. ....
> > Also ^[1-3][0-9]\.07\.
> > Das liefert aber _auch_ 10.7....16.07. :(
> 
> Ja sicher ;-) Was ist mit:
> 
> #!/usr/local/bin/perl
> 
> $druck=0;
> $startexp="^17\.07";
> $endexp="^20\.07";
> 
> while (<STDIN>) {
>         if (/$startexp/) { 
>                 $druck=1;
>         }
>         if (/$endexp/) {
>                 $druck=0;
>         }
>         if ($druck == 1) {
>                 print;
>         }
> }

Das ist exakt 

          perl -ne 'print if(/^17\.07\./../^23\.08\./)' datei.dat

"unrolled" ;-)

Gruss,

Jens.
> 



Mehr Informationen über die Mailingliste linux-l