From: | Nick Barr <nicky(at)chuckie(dot)co(dot)uk> |
---|---|
To: | pgsql-general(at)postgresql(dot)org |
Subject: | POSIX RE starting with a ( |
Date: | 2004-08-11 13:39:34 |
Message-ID: | 411A2196.4050404@chuckie.co.uk |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Hi,
Just noticed something funny with the POSIX Regular expressions and
wondered if it is a bug, or whether I am doing something wrong. I am
using the POSIX RE in a function that is used in several places so would
have to put some nasty if statement in there for this side case if there
is not work around.
======================================================================
intranet=# select track_id, track_name from ms_track where track_name
like '(%';
track_id | track_name
----------+---------------------------------
1294 | (I Can''t Get No) Satisfaction
1340 | (Hidden Track)
1503 | (Nice Dream)
1942 | (I) Get Lost
(4 rows)
intranet=# select track_name from ms_track where track_name ~ '^\(';
ERROR: invalid regular expression: parentheses () not balanced
intranet=# select track_name from ms_track where track_name ~ '^(';
ERROR: invalid regular expression: parentheses () not balanced
intranet=# select track_name from ms_track where track_name ~ '^\(';
ERROR: invalid regular expression: parentheses () not balanced
======================================================================
Now I have tried a similar query using the PHP POSIX Regular Expressions
and it accepts the sequence '^\(' and matches correctly. Is this a
"feature" of PG that cannot be worked around easily?
Any thoughts?
Thanks
Nick
P.S. Thanks a lot guys for all the hard work on 8.0, looks good to me.
Lots of really useful features, PITR, Win32, Nested transactions. Good
work guys!
From | Date | Subject | |
---|---|---|---|
Next Message | Doug McNaught | 2004-08-11 13:59:28 | Re: the behaviour of timestamp on postgres. |
Previous Message | Elie Nacache | 2004-08-11 13:29:29 | Re: How to write soundex query in postgresql?? |