From: Mario Splivalo <mario.splivalo@mobart.hr>
To: pgsql-sql@postgresql.org
Subject: Re: Postgres regexp matching failure?
Date: Tue, 05 Sep 2006 16:17:50 +0200
Message-ID: <1157465870.27799.39.camel@localhost.localdomain> (raw)
In-Reply-To: <bf05e51c0609050642p590b8a7euc581ffd52119e4ce@mail.gmail.com>
References: <1157451491.27799.6.camel@localhost.localdomain>
<bf05e51c0609050642p590b8a7euc581ffd52119e4ce@mail.gmail.com>
On Tue, 2006-09-05 at 08:42 -0500, Aaron Bono wrote:
> On 9/5/06, Mario Splivalo <mario.splivalo@mobart.hr> wrote:
>
> pulitzer2=# select 'stop works' ~ '^\s*(?:[\
> +|-]|(?:[sS][tT][oO][pP]\b)).*$';
> ?column?
> ----------
> f
> (1 row)
>
> Here, postgres should return true, but it gives me false.
>
>
> \b is a back-space - is that what you are wanting there? If I remove
> it I get true.
Actually, I'm not sure :) As I've mentioned, python/java/perl do as I
expected, postgres on the other hand doesn't. If \b was the backspace,
then I'd have trouble with '+mario test', and that one seems to be OK.
I also tried doublebackslashing, all the same.
So, I guess it's obvious that postgres doesn't treat regular expressions
the same way as java/perl/pyton/php/awk/sed do...
Mario
--
Mario Splivalo
Mob-Art
mario.splivalo@mobart.hr
"I can do it quick, I can do it cheap, I can do it well. Pick any two."
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: mario.splivalo@mobart.hr
Subject: Re: Postgres regexp matching failure?
In-Reply-To: <1157465870.27799.39.camel@localhost.localdomain>
* 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