Is there any requirement that you have to use REPLACE? Another (possibly
better) way to do the same is by doing:

  select translate(your_string,'aeiou','') from your_table;
 
In my experience that performs much better than regexp. I just ran it on
a table of about 100K random U.S addresses and TRANSLATE outperforms
REGEXP_REPLACE by a factor of 2. I would use TRANSLATE unless you need
some of the heavier lifting that REGEXP can provide.



> -----Original Message-----
> From: [EMAIL PROTECTED] 
> [mailto:[EMAIL PROTECTED] On Behalf Of Geoffrey
> Sent: Sunday, May 07, 2006 3:54 PM
> To: pgsql-general@postgresql.org
> Subject: Re: [GENERAL] Using the REPLACE command to replace all vowels
> 
> Magnus Hagander wrote:
> >> Is there a way to make seperate replacements in 1 field in 
> >> one command in SQL?
> >>
> >> I need to remove all vowels (a,e,i,o,u) in a field. How would 
> >> I go about that?
> > 
> > Try something like
> > SELECT regexp_replace(your_string,'[aeiou]','','g') ...
> > 
> > (btw, if you want all vowels, don't forget 'y' :-P)
> 
> As I recall, that should be 'and sometimes y...  I don't 
> recall the sql 
> syntax for SOMETIMES :)
> 
> -- 
> Until later, Geoffrey
> 
> Any society that would give up a little liberty to gain a little
> security will deserve neither and lose both.  - Benjamin Franklin
> 
> ---------------------------(end of 
> broadcast)---------------------------
> TIP 5: don't forget to increase your free space map settings
> 

---------------------------(end of broadcast)---------------------------
TIP 9: In versions below 8.0, the planner will ignore your desire to
       choose an index scan if your joining column's datatypes do not
       match

Reply via email to