我正在为Postgresql 8.4构建一个自定义的ispell字典配置,并且在使用撇号中的单词进行正确解析时遇到了一些问题。 Postgresql中包含的ispell词典包括一个.affix文件,其中包含一个“M”SFX规则,该规则指定了其单词的扩展形式。
这是一个例子,假设我的词典文件中有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解析'
作为单个单词的一部分,而不是将其分解为“空格符号”?