On Thu, 25 Sep 2003, Michael A Nachbaur wrote: > I've created the following stored procedure to allow me to do > international-insensitive text searches, e.g. a search for "Resume" would > match the text "Résumé". > > I wanted to know: > > a) am I missing any characters that need to be converted? My first (and only > language) is English, so I'm in the dark when that is concerned; > b) is there a better and/or faster way of implementing this? I don't want > searches to bog down (at least too badly) as a result of this. > > CREATE OR REPLACE FUNCTION i18n2ascii (TEXT) RETURNS TEXT AS ' > my ($source) = @_; > $source =~ > tr/áàâäéèêëíìîïóòôöúùûüÁÀÂÄÉÈÊËÍÌÎÏÓÒÔÖÚÙÛÜ/aaaaeeeeiiiioooouuuuAAAAEEEEIIIIOOOOUUUU/; > return $source; > ' LANGUAGE 'plperl';
You could probably accomplish the same thing without using perl via the built in function translate(). Look in the functions-string.html in the 7.3.x documentation. Also, the regex version of substring() is quite powerful. ---------------------------(end of broadcast)--------------------------- TIP 7: don't forget to increase your free space map settings