I am trying to write an unaccent function because I need to do some queries comparing data that has accents and data that does not.
The encoding on my DB is Unicode, so far I have found an unaccent() function by looking in the mail archives it looks like the following:
CREATE FUNCTION unaccent(text) RETURNS text AS $$
BEGIN
RETURN translate($1, '\342\347\350\351\352\364\373', 'aceeeou')
; END; $$ LANGUAGE plpgsql IMMUTABLE STRICT;
My problem is that the values like \342 are for LATIN1 type encoding. I have tried and failed to get this working using the what I think is the Unicode escaping method \u0032 for example.
Even if someone could help me with the Unicode escaping method that would be useful. For example if I wanted to find a Unicode character 0x00E2 with a select statement how would I?
Something like select * from table where field like ‘%\u00e2%’;
Doesn’t seem to work.
Does anyone have a good method for unaccenting Unicode dbs/characters?
I am using PG7.4 on FC2
Thank you