有没有人能给我举个例子,说明如何使用Lucene.NET(或Java版本的Lucene,或其他具有Lucene端口的语言)对两个字符串进行模糊匹配。
有没有人能给我举个例子,说明如何使用Lucene.NET(或Java版本的Lucene,或其他具有Lucene端口的语言)对两个字符串进行模糊匹配。
您能具体说明一下“模糊匹配”的意思吗?
Lucene使用波浪号(~)操作符和通配符(* & ?)提供模糊查询。 请参见此处
如果您想比较两个字符串的距离,使用Levenshtein、Jaro-Winkler等方法,最好使用一个单独的库,如SimMetrics。 我在生产网站中使用Simmetrics,效果很棒。
SimMetricsMetricUtilities.Levenstein ls = new SimMetricsMetricUtilities.Levenstein(); //compare string 1, string 2
double sim = ls.GetSimilarity(string_1, string_2);
if(sim > [some value])
{
//do something
}