On Wed, 12 Mar 2003, Romeyn, Derek wrote:

> I have a DB that records HTTP log data like this.  I'm horrible at regular
> expressions and could use some real help in pulling out the HTTP error code
> from lines that look like this.
>
> 65.248.129.126 - xm1721 [11/Mar/2003:05:41:35 -0800] "POST
> /applogic/brpulseappletinfonew HTTP/1.1" 500 16 7 "-" "
> 12.235.196.99 - - [11/Mar/2003:05:55:35 -0800] "GET /.com HTTP/1.1" 500 184
> "-" "Mozilla/4.0 (compatible; MSIE 6.0; Win
> 12.229.35.165 - - [12/Mar/2003:04:34:11 -0800] "GET /e/t/applogic/spacer.gif
> HTTP/1.1" 404 0 "https://www.here.com/t
> 24.98.188.254 - - [12/Mar/2003:04:43:19 -0800] "GET
> /e/t/kc/images/liquidation_rights.gif HTTP/1.1" 404 0 "https://www.h
> 207.5.195.98 - - [12/Mar/2003:04:56:32 -0800] "GET
> /e/t/invest/img/spacer.gif HTTP/1.1" 404 0 "https://www.here.com/t
>
> I'm guessing I need the three digits that are located on each line between
> 'HTTP/\d.\d" ' and another ' ' but not sure how to do that.

You've almost done it yourself.
I've never really worked with HTTP log data, but from the lines that
you've given, I would say:


my ($error_code);
if ($ln =~ / HTTP\/\d\.\d\" (\d+)/)
    {
    ($error_code) = $1;
    }

bye
George P.

>
> Thanks much,
> Derek
>
>
> --
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>


-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to