Lucene 为什么不是';我的查询没有找到结果,这是完全匹配还是包含?

Lucene 为什么不是';我的查询没有找到结果,这是完全匹配还是包含?,lucene,Lucene,我的索引包含以下数据: doc.add(new StringField("domain", "examplehouse.com", Field.Store.YES) doc.add(new StringField("domain", "exampletree.com", Field.Store.YES) doc.add(new StringField("domain", "exampleapple.com", Field.Store.YES) 现在,我尝试返回包含“示例”一词的所有域: 打印时

我的索引包含以下数据:

doc.add(new StringField("domain", "examplehouse.com", Field.Store.YES)
doc.add(new StringField("domain", "exampletree.com", Field.Store.YES)
doc.add(new StringField("domain", "exampleapple.com", Field.Store.YES)
现在,我尝试返回包含“示例”一词的所有域:

打印时的查询如下所示:

+domain:example

这是正确的查询类型还是完全匹配?

术语查询始终是完全匹配的。在您的情况下,基于通配符的查询(如PrefixQuery)更有意义:

有多种通配符类型,您应注意了解这一点:

  • 前缀(多结尾通配符):examp*
  • 单端通配符:示例
  • 多个前导通配符:*足够
  • 单前导通配符:?示例
指向lucene文档的旧但仍然有效的链接,其中包含查询语法:

+domain:example