In article <20060327114037.GD30791@xxxxxxxxx>, kleptog@xxxxxxxxx says... > On Mon, Mar 27, 2006 at 12:45:05PM +0200, SunWuKung wrote: > > This sounds like a very interesting concept. > > It wouldn't be 'case insensitive' just insensitive. > > > > The way I imagine it now is a special case of the ~ function. > > I create matchgroups in a table and check each character if it is in the > > group. If it is I will replace the character with the group in [éÉE], > > [oóOÓ??] and do a regexp with that. > > No need to reinvent the wheel. ICU provides a range of services to deal > with this. For example the following filter in ICU: > > NFD; [:Nonspacing Mark:] Remove; NFC. > > Will remove all accents from characters. And it works for all Unicode > characters. With a bit more thinking you can work with case variations > also. > > There is also a locale-independant case-mapping module there plus > various locale specific ones also. > > http://icu.sourceforge.net/userguide/Transform.html > http://icu.sourceforge.net/userguide/caseMappings.html > http://icu.sourceforge.net/userguide/normalization.html > > Have a nice day, > Thanks, I looked at this and it looks like something that would indeed solve the problem. However I was so far unable to figure out how could I use this from within Postgres. If you have experience with it could you give me an example? Thanks Balázs