上午使用Apache Lucene搜索與我的Java應用程序。查詢建立在搜索國家代碼(通常以兩個字母的單詞,例如 - IN - 印度,美國 - 英國 - 英國等)的人名(字母)搜索Apache Lucene搜索 - 關鍵字失敗 - IN
然而問題出現了,當我嘗試用查詢條件查詢值爲字母=「Steve」和國家=「IN」時,即使記錄存在,搜索查詢結果也沒有值,只有當國家被選爲IN時(印度)
alphabet = alphabet.trim() + "*";
query = new QueryParser(Version.LUCENE_30, searchFor[0], analyzer).parse(alphabet.trim());
mainQuery.add(query, BooleanClause.Occur.MUST);
}
if ((country != null) && (country.trim().length() > 0)) {
query = new QueryParser(Version.LUCENE_30, searchFor[1], analyzer).parse(country.trim());
mainQuery.add(query, BooleanClause.Occur.MUST);
}
您正在使用哪種分析儀?一些分析儀可能會認爲IN是一個停用詞,因此將其丟棄。 – 2013-03-05 08:13:23
嗨Emanuuele Bezzi,我正在使用Apache Lucene Core 3.0,如何編輯StopAnalyzer,java來編輯STOP WORDS,我是否需要手動反編譯jar中的所有類文件並編輯和編譯? – user2104391 2013-03-05 08:35:11