Lucene.net搜索没有返回名称

时间:2018-05-25 10:11:27

标签: lucene.net

我使用WhitespaceAnalyzer索引某些值。

document.AddField("transcript", <transcript value>, Lucene.Net.Documents.Field.Store.YES, Lucene.Net.Documents.Field.Index.ANALYZED);

并进行如下搜索

booleanMiniQuery.Add(new TermQuery(new Term("transcript", <search value>)), rule);

当包含一些名称,如 baileys bailey 进行搜索时,不会返回任何结果。

任何人都能说出我做错了吗

1 个答案:

答案 0 :(得分:0)

在Lucene中搜索术语之前,需要使用与该文本建立索引的分析器(在本例中为 WhiteSpaceAnalyzer )分析字符串。

我建议使用QueryParser来简化此过程,例如:

var qParser = New QueryParsers.Classic.QueryParser(Version, "transcript", WhiteSpaceAnalyzer) var termQuery = qParser.parse(<search value>) booleanMiniQuery.Add(termQuery, rule);