如何在弹性搜索jhipster项目中获得完全匹配的不区分大小写的结果

时间:2017-01-13 13:11:38

标签: java spring elasticsearch spring-boot

使用spring boot-1.4.0-RELEASE和弹性搜索-2.3.5处理Jhipster项目。 当我使用分析对数据进行索引,然后使用不同的查询构建器进行搜索时,结果会有所不同且不正但是在将索引更改为 not_analyzed 时,大多数过滤器工作正常,但搜索区分大小写。

为了未分析数据,我们在实体类字符串字段中添加了这个注释:

@Field(type = FieldType.String, index = FieldIndex.not_analyzed, store = true)

我必须执行搜索的运营商是:

  • IsNot
  • IsOneOf
  • IsNotOneOf
  • 包含
  • DoesNotContains
  • StartsWith
  • 的endsWith

因此,对于not_analyzed索引,除了搜索字符串的区分大小写外,它返回正确的结果。

在研究中,我们发现我们可以使用带有tokenizer小写的关键字分析器来执行搜索,我已经搜索了所有返回解决方案,并使用lucene spring或弹性搜索查询。我想要使​​用弹簧靴弹性搜索的解决方案。我们如何在注释中或在发送搜索请求时应用它。

我们希望使搜索不区分大小写,但它应该为所有运算符提供正确的结果。有什么办法吗?

0 个答案:

没有答案