如何使用' - '来搜索字段弹性搜索中的字符

时间:2013-11-20 06:00:28

标签: elasticsearch

我是弹性搜索新手。我有以下文档,其中一个字段“eventId”的值为“ - ”。 当我尝试使用eventId的完整值进行搜索时,我没有得到任何结果。

Sample Document app/event
 {
     "tags": {}
         "eventId": "cc98d57b-c6bc-424c-b54c-df1e3df0d942",
 }

我没有为索引创建任何显式设置。 感谢。

1 个答案:

答案 0 :(得分:1)

您应该检查标记生成器是否将您的值拆分为多个字段。也许您的值存储为5个字段:“cc98d57b”,“c6bc”,“424c”,“b54c”和“df1e3df0d942”

您可以使用'Kopf'插件(https://github.com/lmenezes/elasticsearch-kopf)进行分析。

如果这是您的问题,您应该更改字段映射,以便不分析该值(“index”:“not_analyzed”)。

有关如何设置该映射的示例,请参阅此处:Elasticsearch mapping settings 'not_analyzed' and grouping by field in Java

之后,您应该能够搜索您的特定值。