lucene field.index有线现象

时间:2012-03-08 16:37:47

标签: lucene

当我向这样的文档添加字段时:

doc.add(new Field("name","Jack",Field.Store.YES,Field.Index.ANALYZED));

当我搜索姓名时,我可以获得点击:杰克

但是,如果我使用Field.Index.NOT_ANALYZED而不是Field.Index.ANALYZED,程序找不到名称:Jack,为什么?

因为Field.Index.NOT_ANALYZED的字段也被索引,我认为该字段是可搜索的,但为什么我找不到任何东西?

1 个答案:

答案 0 :(得分:0)

它应该工作。但是你的查询解析器可能使用了一个分析器,它对你的标记执行一些操作(比如小写)。尝试在搜索时使用KeywordAnalyzer。

或者,您可以自己构建查询:

Query q = new TermQuery(new Term("name", "Jack"));