Postgresql полнотекстовый поиск слов с апострофами
Я работаю над созданием настраиваемой конфигурации словаря ispell для Postgresql 8.4 и у меня возникают некоторые проблемы с получением слов с апострофами для правильного анализа. Словари ispell, включенные в Postgresql, включают в себя файлы.affix, которые содержат правило SFX "M", которое определяет расширенную форму его слова.
Вот пример, предполагая, что у меня есть dictionary/SM
в моем файле словаря:
SELECT to_tsvector('english_ispell', 'dictionary''s dictionaries');
Ожидаемый результат:
'dictionary':1,2
Фактический выход:
s':2, 'dictionary':1,3
Я что-то делаю неправильно? Вот выходные данные из ts_debug, чтобы показать, как их анализируют.
SELECT * FROM ts_debug('english_ispell', 'dictionary''s dictionaries');
alias | description | token | dictionaries | dictionary | lexemes
-----------+-----------------+--------------+-------------------------------+----------------+--------------
asciiword | Word, all ASCII | dictionary | {english_ispell,english_stem} | english_ispell | {dictionary}
blank | Space symbols | ' | {} | |
asciiword | Word, all ASCII | s | {english_ispell,english_stem} | english_ispell | {s}
blank | Space symbols | | {} | |
asciiword | Word, all ASCII | dictionaries | {english_ispell,english_stem} | english_ispell | {dictionary}
Как мне получить Postgresql для анализа '
как часть одного слова и не разбить его как "символ пространства"?