Sphinx 搜索:多词词形式未正确索引

Sphinx search: multi-term wordforms not indexed correctly

我的 wordforms 文件中的特定条目有问题 按预期解释。

这里有几个例子:

1/48 > forty-eighth
1/96 > ninety-sixth

如您所见,这些条目同时包含斜杠和连字符,这可能与 我的问题。

出于某种原因,Sphinx 没有正确地将每个分数等同于拼写出来的分数 版本。 “1/48”的搜索结果与“四十八”的搜索结果不同,因为它们应该 是。换句话说,这些等效形式之间的映射不起作用。

在我的 Sphinx 配置中,我将正斜杠 (/) 设置为混合字符,因此我假设 该分数被正确识别。

为了支持这一信念,以下词形条目 确实 正常工作:

1/4 > fourth

有谁知道为什么我的多术语同义词无法按预期工作?

我尝试用 space 替换连字符,但这并没有改变结果 全部。是否有助于更改术语的顺序(即,它们在“>”的哪一侧? 应该放)?

非常感谢您的帮助。

在 Sphinx 中使用字符时,最好牢记以下几点:

By default, the Sphinx tokenizer handles unknown characters as whitespace https://sphinxsearch.com/blog/2014/11/26/sphinx-text-processing-pipeline/

当我使用词形时,这也给了我奇怪的结果。

我建议您将连字符添加到 charset_tables,以便 ninety-sixth 成为一个词。 ignore_chars 也是一个选项,但您将寻找 ninetysixth

很大程度上取决于您的其余数据集和用例。