如何在asp.net中的Lucene.net进行模糊搜索?

时间:2013-09-17 13:28:47

标签: c# lucene.net

我们创建了lucene.net索引并根据此网址http://sonyblogpost.blogspot.in/进行搜索。但我们希望输出如下。

示例:如果我搜索“精选”  我想显示相关术语,如“精选”,“特色”,“功能”。

任何人都可以帮助我。 感谢。

2 个答案:

答案 0 :(得分:7)

要执行模糊搜索,您需要创建MultiFieldQueryParser以下是如何执行此操作的示例:

var parser = new MultiFieldQueryParser(Lucene.Net.Util.Version.LUCENE_29, new[] { "field1", "field2" }, new StandardAnalyzer(Lucene.Net.Util.Version.LUCENE_29));

您的Lucene.Net版本可能会有所不同。

接下来,您将从解析器获得模糊查询,如下所示:

var query = parser.GetFuzzyQuery("fieldName", "featured", 0.7f);

0.7f的浮点值是最小相似度。您可以调整此数字,直到获得所需的结果。该数字不能超过1.0f。使用Lucene Searcher执行此查询将为您提供所期望的结果。

答案 1 :(得分:0)

您可能正在寻找词干:Stemming English words with Lucene - 链接是Java,但您应该能够识别lucene .Net API的相应部分。