如何配置 Solr 使用 Levenshtein 近似字符串匹配?

发布于 2024-08-11 17:33:47 字数 153 浏览 10 评论 0原文

Apache Solr 搜索引擎是否提供近似字符串匹配(例如通过 Levenshtein 算法)?

我正在寻找一种按姓氏查找客户的方法。但我不能保证名称的正确性。我如何配置 Solr 以便它能找到这个人 即使我搜索“Levenshtein”,也是“Levenshtein”吗?

Does Apaches Solr search engine provide approximate string matches, e.g. via Levenshtein algorithm?

I'm looking for a way to find customers by last name. But I cannot guarantee the correctness of the names. How can I configure Solr so that it would find the person
"Levenshtein" even if I search for "Levenstein" ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

匿名。 2024-08-18 17:33:47

通常,这是通过 SpellCheckComponent 完成的,它在内部使用 Lucene SpellChecker 默认情况下,它实现了 Levenshtein。

wiki 确实很好地解释了它的工作原理、如何配置它以及可用的选项,不点在这里重复一下。

或者您可以只使用 Lucene 的模糊搜索运算符

另一种选择是使用 语音过滤器而不是编辑。

Typically this is done with the SpellCheckComponent, which internally uses the Lucene SpellChecker by default, which implements Levenshtein.

The wiki really explains very well how it works, how to configure it and what options are available, no point repeating it here.

Or you could just use Lucene's fuzzy search operator.

Another option is using a phonetic filter instead of Levenshtein.

守护在此方 2024-08-18 17:33:47

Mauricio 的回答很好,我唯一的“廉价”添加就是将 ~ 字符附加到您想要在进入 solr 时进行模糊匹配的所有术语。如果您使用默认设置,这将为您提供模糊匹配。

Great answer by Mauricio, my only "cheapo" addition is to just append the ~ character to all terms that you want to fuzzy match on the way in to solr. If you are using the default set up, this will give you fuzzy match.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文