Re: match an IP address - Mailing list pgsql-general

From Steve Atkins
Subject Re: match an IP address
Date
Msg-id E61916EF-A2A5-41F8-85A7-0C0828205C54@blighty.com
Whole thread Raw
In response to Re: match an IP address  (hubert depesz lubaczewski <depesz@depesz.com>)
List pgsql-general
On Sep 23, 2008, at 12:26 AM, hubert depesz lubaczewski wrote:

> On Mon, Sep 22, 2008 at 05:59:25PM +0100, Joao Ferreira gmail wrote:
>> I'm unable to build a LIKE or SIMILAR TO expression for matching
>> and ip
>> address
>> 192.168.90.3
>> 10.3.2.1
>> any help please...
>
> use this regular expression:
>
> '^[0-9]{1,3}(.[0-9]{1,3}){3}$'
>
> warning: do not use "like" or "similar to".
> proper way to use it:
>
> select * from table where field ~ '^[0-9]{1,3}(.[0-9]{1,3}){3}$';
>
> this regexp is not 100% fault proof - it will happily return rows
> like:
> '300.999.998.7'

It'll also return rows like 3L33T0o7 - which normally I'd not be too
bothered about, but on a forum that's a fairly typical username. :)

Gotta escape that period:

^[0-9]{1,3}(?:\.[0-9]{1,3}){3}$


Cheers,
   Steve


pgsql-general by date:

Previous
From: Tino Wildenhain
Date:
Subject: Re: match an IP address
Next
From: "Phoenix Kiula"
Date:
Subject: Re: match an IP address