Re: FTS, ISPELL и Ё

From: "Александр В(dot) Сизов" <subs(at)arpanet(dot)ru>
To: pgsql-ru-general(at)postgresql(dot)org
Subject: Re: FTS, ISPELL и Ё
Date: 2008-12-15 00:10:48
Message-ID: 4945A088.1050506@arpanet.ru
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-ru-general


Немного разобрался: на слова с буквой ё срабатывает словарь
russian_stem. Теперь как сделать чтобы ёж == еж ? ))

Александр В. Сизов пишет:
> Hello, world!
>
> Решил поэкспериментировать в FreeBSD6.3 под PostgreSQL 8.3.5 (+ICU) с
> FTS. В качестве словаря выбрал Ispell 0.99g5, собрал с поддержкой 'ё'.
> Сразу возникла проблема: 'самолёт' @@ 'самолет' = false. Ок,
> пересобрал без поддержки 'ё' => 'самолёт' @@ 'самолет' = false. Ок,
> собрал, распарсил, вырезал ё руками (ни в одной строчке не оставил
> 'ё') - 'самолёт' @@ 'самолет' = false, при этом 'самолёты',
> 'самолётами', ... нормально приводятся к каноническому виду (как???).
> Привожу код:
>
> -------------------------------------------------------- CUT
> CREATE SCHEMA library;
>
> CREATE TEXT SEARCH DICTIONARY library.ispell_ru (
> TEMPLATE = ispell,
> DictFile = ispell_ru,
> AffFile = ispell_ru,
> StopWords = russian
> );
>
> CREATE TEXT SEARCH CONFIGURATION library.russian (
> COPY = russian
> );
>
> ALTER TEXT SEARCH CONFIGURATION library.russian
> ALTER MAPPING FOR hword, hword_part, word
> WITH library.ispell_ru, russian_stem;
>
> ALTER TEXT SEARCH CONFIGURATION library.russian
> DROP MAPPING FOR
> email,
> file,
> float,
> host,
> sfloat,
> url,
> url_path,
> version;
>
> -------------------------------------------------------- CUT
>
> На время, чтобы на долго не застревать, написал функции, подменяющие
> ё->е в поиске и записи в БД, но хотелось бы понять и решить проблему...
>
> WBR!
>

In response to

Browse pgsql-ru-general by date

  From Date Subject
Next Message Nikolay Samokhvalov 2008-12-15 05:41:40 Re: FTS, ISPELL и Ё
Previous Message Александр В. Сизов 2008-12-14 23:25:07 FTS, ISPELL и Ё