regularny vyraz na prehladavanie viac riadkov.
Marian Cavojsky
cavojsky na soria-grey.sk
Pátek Listopad 30 12:33:08 MET 2001
On Fri, Nov 30, 2001 at 12:10:47PM +0100, Honza Pazdziora wrote:
> On Fri, Nov 30, 2001 at 11:52:02AM +0100, Marian Cavojsky wrote:
> >
> > $date = $2.$1 if( $buffer =~ /Received:.*?\d?\d\s(\w{3})\s(\d{4})/m);
> >
> > Neobjavi nic co by vyhovovalo. Vedel by mi niekto v nom najst chybu?
>
> Tecka v regularnim vyrazu defaultne nematchuje na \n, takze to .*?
> nepreleze na dalsi radek, kde by to datum slo nalezt. Pouzijte /s.
>
Nefunguje ani /s ani /ms
posielam program:
$date = '';
$buffer = '';
open FILEIN, "<".$ARGV[0] or die( "Error: '".$ARGV[0]."'");
while( <FILEIN>){
if( /^From /){
if( $date ne ''){
$date = $2.$1 if( $buffer =~ /Received:.*?\d?\d\s(\w{3})\s(\d{4})/ms);
open FILE, ">>".$ARGV[0].".".$date or die( "Error: '".$ARGV[0]."'");
print "Append '".$ARGV[0].".".$date."'\n";
print FILE $buffer;
close FILE;
$buffer = '';
}
}
$buffer .= $_;
}
close FILEIN;
--
Marian Cavojsky <cavojsky @ soria-grey.sk>
Spravca siete, Soria & Grey s.r.o, reklamna agentura
Windows&Office jsou jako droga. Krasny a prijemny prvni dojem,
zvyknes si a nemuzes uz bez nich zit.
A pak zacnou prichazet vedlejsi ucinky ...
Další informace o konferenci Perl