http://www.perlmonks.org?node_id=19692


in reply to Re: Acolyte needs regex help
in thread Acolyte needs regex help

Thanks much for the help <CODE> #! /usr/bin/perl -w use strict; my $goodFILE = "/logs/goodstring.txt"; my $badFILE = "/logs/badstring.txt"; my $logFILE = "/logs/processing/uexpress/access.20000622"; open(GOOD , ">$goodFILE") || die "cannot create $goodFILE : !$\n"; open(BAD , ">$badFILE") || die "cannot create $badFILE : !$\n"; open(FILE, "$logFILE"); while (<FILE>) { if ( /^(\S+) (\S+) (\S+) \[(^:+):(\d+:\d+:\d+) (\S+)\] "(\S+) (\S+) (\S+)" (\S+) (\S+) "(.*?)" "(.*?)"$/) { my ($client,$identuser,$authuser,$date,$time,$tz,$method,$url,$protocol,$status,$bytes,$refer,$platform) = ($1,$2,$3 ,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13); print GOOD "client : $client\n"; print GOOD "userid : $identuser\n"; print GOOD "authuser : $authuser\n"; print GOOD "date : $date\n"; print GOOD "time : $time\n"; print GOOD "time zone : $tz\n"; print GOOD "method : $method\n"; print GOOD "URL : $url\n"; print GOOD "protocol : $protocol\n"; print GOOD "status : $status\n"; print GOOD "bytes : $bytes\n";