我试图做的是为索引添加一个值,如下所示:
doc.Add(new Field("field_name", value, Field.Store.YES, Field.Index.ANALYZED));
值为"Cell phones"
,所以它实际上做的是为索引"Cell"
和`" phone"添加两个单独的值。如何添加一个:"手机"?
答案 0 :(得分:0)
正如@femtoRgon建议NOT_ANALYZED是一个不错的选择。
但您还必须注意查询的构造方式。分析方法必须兼容索引和查询。
如果您使用QueryParser,您可以使用KeywordAnalyzer之类的东西。另请查看PerFieldAnalyzerWrapper,以便为不同的字段使用不同的方法。
为相同的值添加多个字段,但以不同的方式分析不同的查询样式也是明智的