【发布时间】:2013-09-17 13:28:46
【问题描述】:
我们已经创建了 lucene.net 索引并基于此 URL http://sonyblogpost.blogspot.in/ 进行搜索。但我们希望输出如下所示。
示例:如果我搜索“精选” 我想显示相关术语,如“特色”、“特色”、“特色”。
任何人都可以帮助我。 谢谢。
【问题讨论】:
标签: c# lucene.net
我们已经创建了 lucene.net 索引并基于此 URL http://sonyblogpost.blogspot.in/ 进行搜索。但我们希望输出如下所示。
示例:如果我搜索“精选” 我想显示相关术语,如“特色”、“特色”、“特色”。
任何人都可以帮助我。 谢谢。
【问题讨论】:
标签: c# lucene.net
要执行模糊搜索,您将创建一个 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 执行此查询将为您提供您期望的结果。
【讨论】:
您可能正在寻找词干:Stemming English words with Lucene - 链接是 Java,但您应该能够识别 lucene .Net API 的相应部分。
【讨论】: