我使用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 进行搜索时,不会返回任何结果。
任何人都能说出我做错了吗
答案 0 :(得分:0)
在Lucene中搜索术语之前,需要使用与该文本建立索引的分析器(在本例中为 WhiteSpaceAnalyzer )分析字符串。
我建议使用QueryParser来简化此过程,例如:
var qParser = New QueryParsers.Classic.QueryParser(Version, "transcript", WhiteSpaceAnalyzer) var termQuery = qParser.parse(<search value>)
booleanMiniQuery.Add(termQuery, rule);