From: Fernando Hevia <fhevia@ip-tel.com.ar>
To: 'Oliveiros C,' <oliveiros.cristina@marktest.pt>
To: pgsql-sql@postgresql.org
Subject: Re: Is there any function to test for numeric ips?
Date: Fri, 11 Dec 2009 13:20:03 -0300
Message-ID: <D417D556031146289BCD9BA0F96F20DB@iptel.com.ar> (raw)
In-Reply-To: <E94D918326D044C69895D829038E31B2@marktestcr.marktest.pt>
References: <E94D918326D044C69895D829038E31B2@marktestcr.marktest.pt>
> -----Mensaje original-----
> De: de Oliveiros C,
>
> Dear All,
>
> I have a table with host names and some happen to be numeric IPs.
>
> I would like to be able to filter out the later.
>
> Is there any function pre-defined in the system that can test
> a particular text type value to see if it is a numeric ip?
>
> Something that returns true if applied to '192.168.1.1' but
> false if applied to 'videos.sapo.pt' ?
>
> I considered NOT LIKE '%.%.%.%' but I'm affraid it will
> filter out host names like 'www.google.com.br'
>
> I've realized that, for ex, inet 'x.x.x.x' will fail if the
> input is not a numeric IP, is there any simple and direct way
> to somewhat trap that error and convert it to a false value
> that can be used in a WHERE clause?
>
You could filter IP out with a regular expression:
select hostname as hosts_not_ip
from table
where hostname !~ '^[0-9]\.[0-9]\.[0-9]\.[0-9]$'
Cheers,
Fernando.
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-sql@postgresql.org
Cc: fhevia@ip-tel.com.ar, oliveiros.cristina@marktest.pt
Subject: Re: Is there any function to test for numeric ips?
In-Reply-To: <D417D556031146289BCD9BA0F96F20DB@iptel.com.ar>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox