Re: Isnumeric function? - Mailing list pgsql-sql

From Oliver Elphick
Subject Re: Isnumeric function?
Date
Msg-id 1094667111.2014.98.camel@linda
Whole thread Raw
In response to Re: Isnumeric function?  (Josh Berkus <josh@agliodbs.com>)
Responses Re: Isnumeric function?  (Thomas Swan <tswan@idigx.com>)
List pgsql-sql
On Wed, 2004-09-08 at 18:48, Josh Berkus wrote:
> Theo, Oliver,
> 
> > Any reason why you don't like  ~ '^([0-9]?)+\.?[0-9]*$' ?
> 
> Yes, because it also matches "." , which is not a valid numeric value.
> 
> >  ~ '^([0-9]+|[0-9]+\\.[0-9]*|[0-9]*\\.[0-9]+)$'
> 
> Ah, the brute force approach ;-)

Nothing like using a nice big hammer!

> Actually, the above could be written:
> 
> ~ '^([0-9]+)|([0-9]*\\.[0-9]+)$'

But that doesn't allow a trailing decimal point.

> 
> ... though that still seems inelegant to me.  Is there a regex expert in the 
> house?

All the elegant approaches I can think of match the empty string. There
must be at least one digit and 0 or 1 decimal point with no other
characters permitted.  If you use this as a constraint, you could make
it elegant and combine it with another constraint to exclude '' and '.'.
-- 
Oliver Elphick                                          olly@lfix.co.uk
Isle of Wight                              http://www.lfix.co.uk/oliver
GPG: 1024D/A54310EA  92C8 39E7 280E 3631 3F0E  1EC0 5664 7A2F A543 10EA
========================================   "Put on the whole armor of God, that ye may be able to      stand against
thewiles of the devil."                                               Ephesians 6:11 
 



pgsql-sql by date:

Previous
From: Josh Berkus
Date:
Subject: Re: Isnumeric function?
Next
From: Kemin Zhou
Date:
Subject: aggregate function stddev