Lucene没有使用值&#34索引String字段;这个"

时间:2017-06-02 10:32:42

标签: lucene

我将文档添加到lucene索引中,如下所示:

Document doc = new Document();
String stringObj = (String)field.get(obj);
doc.add(new TextField(fieldName, stringObj.toLowerCase(), org.apache.lucene.document.Field.Store.YES));
indexWriter.addDocument(doc);

我正在进行外卡搜索,如下所示:

searchTerm = "*" + searchTerm + "*";
term = new Term(field, sTerm.toLowerCase());
Query query = new WildcardQuery(term);
TotalHitCountCollector collector = new TotalHitCountCollector();
indexSearcher.search(query, collector);
if(collector.getTotalHits() > 0){
    TopDocs hits = indexSearcher.search(query, collector.getTotalHits());
}

当我的字符串带有"这个"值,它没有被添加到索引中,因此我没有得到"这个"的搜索结果。我正在使用StandardAnalyzer。

1 个答案:

答案 0 :(得分:1)

英语的常用术语如介词,代词等被标记为停用词并在索引之前被省略。您可以为分析仪定义自定义分析器或自定义停止词列表。这样,您就可以省略不想被编入索引的单词,并保留所需的停用词。