为非英语字符启用soundex/metaphone

Jon*_*jap 14 lucene algorithm search soundex metaphone

过去几天我一直在研究soundex,metaphone和其他字符串搜索技术,据我所知,这两种算法在处理音译到英语的非英语单词时效果很好.

然而,我的要求是这样的搜索工作在原始的,非音译语言,容纳字母表,如德语,挪威语,甚至Cyrilic字母表.

有没有能够完全处理这些字母的搜索算法?或者我最好使用第三方全文搜索库,如Lucene?因此,问题就变成了"Lucene处理非英文字母吗?"

ire*_*ses 15

我不是这方面的专家,但你的要求对我来说似乎很难.Soundex专为英语声音和角色而设计.我认为它对非英语语言表现不佳.例如,参见对此相关问题的回答.

Double-Metaphone试图处理比Soundex或Metaphone更复杂的变体,旨在处理各种语言的不规则性.它可能足以满足您的需求.链接页面上有一个库实现列表.

Lucene对其他语言的支持基于分析器的概念.Lucene带有一套针对不同语言的分析器(虽然我找不到默认列表),但质量可能很不稳定.