Hello Charles, unfortunately on Windows 7 this fails:

psql (9.5.3)
Type "help" for help.

# select lower(('И'::text collate "en_US")) ;
ERROR:  collation "en_US" for encoding "UTF8" does not exist
LINE 1: select lower(('?'::text collate "en_US")) ;
                                ^
By the way I the following code works well for me on all 3 platforms:

CREATE TABLE words_verbs (
        word varchar(255) PRIMARY KEY CHECK (
                word ~ '^[А-Я]{2,}$' AND
                word !~ '[ЖШ]Ы' AND
                word !~ '[ЧЩ]Я' AND
                word !~ 'Ц[ЮЯ]' AND
                (word ~ '[ТЧ]ЬСЯ$' OR
                 word ~ '[ТЧ]Ь$' OR
                 word ~ 'ТИ$')),
        hashed varchar(32) NOT NULL
);

but I understand that it is probably different methods on the lower layer
(pcre instead of some collating functions?)....

Regards
Alex

Reply via email to