要不要再翻翻文档呢?

请问分词如何过滤掉固定特殊字符

Elasticsearch | 作者 l433608734 | 发布于2020年09月17日 | 阅读数:2030


企业微信截图_20200917092525.png


企业微信截图_20200917092613.png

现有索引mapping和数据如图,通过terms搜索a9a2a8d8fb9c02e64cbebdea94d261b1时是没有问题的,但是当搜索的数据字符串中包含了特殊字符- 的时候搜索不到对应数据,比如
企业微信截图_20200917092817.png

我估计是默认分词的时候将UUID中的特殊字符-处理了
想要知道如何修改分词设置过滤掉这个特殊字符
已邀请:

Ombres

赞同来自:

uuid没必要分词吧 ,改成keyword类型

God_lockin

赞同来自:

这个字段应该是个id类的数据,我理解是不需要通过其中一部分进行搜索的吧
 
设置成keyword同时存一个数组是可行的,在搜索的时候通过filter + term去匹配就好

guoyanbiao520

赞同来自:

使用char_filter过滤器可以替换倒排索引中的特殊字符,你这个问题可以直接-替换为空串就可以了

laoyang360 - 《一本书讲透Elasticsearch》作者,Elastic认证工程师 [死磕Elasitcsearch]知识星球地址:http://t.cn/RmwM3N9;微信公众号:铭毅天下; 博客:https://elastic.blog.csdn.net

赞同来自:

建议:keyword类型 别分词

要回复问题请先登录注册