0
我認爲分析器應該適用索引和搜索過程,是否正確?如果屬實,爲什麼在分析器中使用LowerCaseFilterFactory過濾器後,爲什麼我的文檔字段仍然有大寫字符?爲什麼在使用LowerCaseFilterFactory後文檔字段仍然具有大寫字符?
我使用Luke來檢查我的文檔字段。
這是我的相關代碼。
@Indexed
@AnalyzerDef(name = "remarksAnalyzer", tokenizer = @TokenizerDef(factory = StandardTokenizerFactory.class) , filters = {
@TokenFilterDef(factory = LowerCaseFilterFactory.class),
@TokenFilterDef(factory = SnowballPorterFilterFactory.class, params = {
@Parameter(name = "language", value = "English") }) })
public class Book {
...
@Field(store = Store.YES)
@Analyzer(definition = "remarksAnalyzer")
private String remarks;
...
}
是的,它確實有效,使用小寫和大寫的單詞搜索都會返回正確的結果。感謝您的解釋,它解決了我的困惑。 –
我只是將索引導出到Luke中的一個文件中(_clicking菜單項Tools> Export index to XML_),並發現導出的文件包含分析值和原始值,如下所示:' '和' mnY79bG2snM0Kq4QhCRR '。它應該驗證你的解釋。謝謝,紀堯姆。 –