0

我想在我的 Solr 索引中保留两个版本的单词。第一个是应用了 AsciiFolding,第二个是没有应用 AsciiFolding。

例如,如果用户键入:

gru

我想建议回来

grün

AsciiFolding 正在将变音符号转换为 (a, u, o),我想继续使用原始单词。因此,如果用户键入:

grü

我无法提出完全不正确的真实和原始词。

4

1 回答 1

2

最简单的方法是使用 2 个字段,例如,text_original并且text_ascii仅将 AsciiFolding 应用于其中一个,然后使用copyField指令将两个结果复制到一个公共字段text

但是请注意,这也会重复所有其他单词。或者,您可以重写 AsciiFolding 以将单词的两个版本插入到令牌流中(这就是同义词搜索的工作方式,IIRC“Lucene in Action”对该过程有很好的解释)。

于 2013-09-20T14:25:31.750 回答