From: | SunWuKung <Balazs(dot)Klein(at)axelero(dot)hu> |
---|---|
To: | pgsql-general(at)postgresql(dot)org |
Subject: | Re: case insensitive match in unicode |
Date: | 2006-04-06 21:12:26 |
Message-ID: | MPG.1e9fa2a061975939989698@news.postgresql.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
In article <20060327114037(dot)GD30791(at)svana(dot)org>, kleptog(at)svana(dot)org 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
From | Date | Subject | |
---|---|---|---|
Next Message | Jim Nasby | 2006-04-06 21:18:11 | Re: Column descriptions - could they be propagated to new tables? |
Previous Message | Jim Nasby | 2006-04-06 21:10:43 | Re: [IDLE IN TRANSACTION] doing a remote pg_dump |