David E. Wheeler writes:
On Jul 17, 2008, at 03:45, Michael Paesold wrote:
Wouldn't it be possible to create a variant of regexp_replace, i.e.
regexp_replace(citext,citext,text), which would again lower-case
the first two arguments before passing the input to
regexp_replace(text,text,text)?
Sure, but then you end up with this:
template1=# select regexp_replace( 'Fxx'::citext, 'X'::citext, 'o');
regexp_replace
----------------
foo
(1 row)
Yeah, you are right, I see. :-)
Which is just wrong. I'm going to look at the regex C functions
today and see if there's an easy way to just always pass them the
'i' flag, which would do the trick. That still won't help replace(),
split_part(), or translate(), however.
Calling regex functions with the case-insensitivity option would be
great. It should also be possible to rewrite replace() into
regexp_replace() by first escaping the regex meta characters.
Actually re-implementing those functions in a case insensitive way
would still be an option, but of course some amount of work. The
question is, how much use case there is.
Best Regards
Michael Paesold
--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers