Обсуждение: Regular expressions and accentuated letters

Поиск
Список
Период
Сортировка

Regular expressions and accentuated letters

От
sergio.cinos@info3.com
Дата:
Dear list members,

I'm using PostgreSQL 8.0.8, witha UTF8 database.
I'm using a regular expression to check if some value is in a string:
  field ~* 'somevalue'
It works ok for 'somevalue', 'SoMeVaLuE somedata'...

But if I check
  field ~* 'á'
It works for 'áeiou', but fails for 'Áeiou'. Seems that
case-insensitive regular expressions don't know that 'Á' is 'á'
uppercased. Same for 'ñ' and 'Ñ'.

To test, if I select upper('áeiou'), it returns 'ÁEIOU',
that is ok. So the 'disconnection' between 'á' and 'Á' just occurs
in  regular expressions, not in other case-insensitive functions.

Is there any solution to avoid this?

Thanks.
--
Sergio Cinos
Info3 Servicios Informáticos S.L.
sergio.cinos@info3.com - www.info3.com