0

我正在尝试使用 SpanTermQuery 查找关键字“(Mercedes OR Benz)”的出现次数,但它仅在“mercedes”、“benz”等小情况下使用单个单词。所以我找不到关键字“Mercedes OR Benz”的出现。

如果有人对此有任何想法,请帮助我。

以下是我正在使用的代码片段。

SpanQuery spanQuery = new SpanTermQuery(new Term("FullText","Mercedes OR Benz"));
// define your span query here
Spans spans = spanQuery.getSpans(indexReader);
int occurrenceCount = 0;
while (spans.next()) {
   occurrenceCount++;
}
System.out.println("Number of Occurences in FullText spans : "+occurrenceCount);

提前致谢。

4

1 回答 1

0

尝试使用 MultiFieldQueryParser

String querystr = "Mercedes OR Benz" ;
String fields[] = {"brands"};

StandardAnalyzer analyzer = new StandardAnalyzer(Version.LUCENE_36);
Query q = new MultiFieldQueryParser(Version.LUCENE_36, fields, analyzer).parse(querystr);
于 2012-08-17T09:23:25.753 回答