【Elasticsearch】Elasticsearch中的 char_filter 使用和讲解
【Elasticsearch】Elasticsearch中的 char_filter 使用和讲解
- char_filter
char_filter
char_filter 在 Elasticsearch 中分为了3类 (html_strip、mapping、test_char_filter),并且在使用char_filter 的时候,在创建index的时候需要就制定对应的 analysis 和 analyzer ,一下讲解其基础的使用方法。
analysis 指定分析器下指定 analyzer 指定分词器
- html_strip:
其中:
1、一个是keyword 、类型为:“type”: “html_strip” 分词,一个字符串过滤器
2、escaped_tags 排除指定的标签
DELETE my_indexPUT my_index
{"settings": {"analysis": {"char_filter": {"test_char_filter": {"type": "html_strip","escaped_tags":["a"]}},"analyzer": {"my_analyzer": {"tokenizer": "keyword","char_filter": "test_char_filter"}}}}
}
# 测试数据
GET my_index/_analyze
{"analyzer": "my_analyzer","text": "<p>I &aposm so <a>happy<a/>!"
}
结果:
- mapping:
DELETE my_index
# 2、映射类型:"type":"mapping"
# mappings 映射的相关数据 一般用于过滤敏感词汇
PUT my_index
{"settings": {"analysis": {"char_filter": {"test_char_filter": {"type":"mapping","mappings":["擦你嘛 => ***" ]}},"analyzer": {"my_analyzer": {"tokenizer": "keyword","char_filter": "test_char_filter"}}}}
}GET my_index/_analyze
{"analyzer": "my_analyzer","text": "擦你嘛"
}
结果
- pattern_replace:
DELETE my_index
# 3、正则替换类型:"type":"pattern_replace", 按照所指定的正则表达式进行替换
# ”replacement“ 替换对饮的值
PUT my_index
{"settings": {"analysis": {"char_filter": {"test_char_filter": {"type":"pattern_replace","pattern":"(\\d{3})\\d{4}(\\d{3})","replacement":"$1***$2"}},"analyzer": {"my_analyzer": {"tokenizer": "keyword","char_filter": "test_char_filter"}}}}
}GET my_index/_analyze
{"analyzer": "my_analyzer","text": "我的电话是17603415057"
}
结果:
以上是简单的使用示例,具体可以看下官方文档:
https://www.elastic.co/guide/en/elasticsearch/reference/7.17/analysis.html
【Elasticsearch】Elasticsearch中的 char_filter 使用和讲解相关推荐
- NodeJS同步MySQL上游数据到ElasticSearch数据库中
NodeJS同步MySQL上游数据到ElasticSearch数据库中 项目地址: https://github.com/Miazzy/xdata-elasticsearchs-service.git ...
- 【Elasticsearch】在 Elastic Cloud 上的 Elasticsearch 服务中,如何针对日志和指标用例确定热温架构的规模
1.概述 转载:在 Elastic Cloud 上的 Elasticsearch 服务中,如何针对日志和指标用例确定热温架构的规模 主要是需要翻墙,比较麻烦. 希望深入了解 Amazon Elasti ...
- [Elasticsearch] Elasticsearch权威指南翻译目录
为了方便大家能够更加快速地找到自己需要参考的那部分,对已经翻译完成的部分根据权威指南的目录做了相应目录,希望能够有所帮助. 起步(Getting Started) 1. 你懂的,为了搜索 英文原文链接 ...
- Elasticsearch - Elasticsearch 优化(十五)
一.硬件选择 Elasticsearch 的基础是 Lucene,所有的索引和文档数据是存储在本地的磁盘中 具体的路径可在 ES 的配置文件../config/elasticsearch.yml 中配 ...
- 关于JDBC中的 PreparedStatement 的使用讲解
**关于JDBC中的 PreparedStatement 的使用讲解@**TOC 文章转载于博客 https://www.cnblogs.com/ysw-go/p/5459330.html 如有侵权, ...
- avascript中的this与函数讲解
徐某某 一个半路出家的野生程序员 javascript中的this与函数讲解 前言 javascript中没有块级作用域(es6以前),javascript中作用域分为函数作用域和全局作用域.并且,大 ...
- python中的object是什么意思_Python object类中的特殊方法代码讲解
python版本:3.8class object: """ The most base type """ # del obj.xxx或del ...
- Learning to Rank 中Listwise关于ListNet算法讲解及实现
[学习排序] Learning to Rank 中Listwise关于ListNet算法讲解及实现 版权声明:本文为博主原创文章,转载请注明CSDN博客源地址!共同学习, ...
- MySQL 数据类型讲解 和Java中所对应的数据类型讲解
MySQL 数据类型讲解 和Java中所对应的数据类型讲解 Mysql数据类型分类 在Mysql中常用数据类型一共有四种字符串数据类型.日期/时间数据类型.数值数据类型以及二进制数据类型. 一.字符串 ...
- mysql表设计讲解_MySQL中数据库的设计归纳讲解
谈到MySQL中数据库的设计,相信大家都知道这是实现实际业务的重要一步,因此对于Java学习者来说,深入了解和学习数据库的设计是十分有必要的.本文为大家准备了一份MySQL中数据库的设计归纳讲解,内容 ...
最新文章
- LeetCode 438. Find All Anagrams in a String--字符串-滑动窗口--C++,Python解法
- 独家 | 提速20倍!3个细节优化Tableau工作簿加载过程(附实例)
- 用命令行操作 VirtualBox 和 SGD
- vs2017搭建Linux的开发调试环境(VisualGDB)
- Windows内存修改初篇
- vue-router之 beforeRouteEnter
- BZOJ2683 简单题(CDQ分治)
- Android应用中使用及实现系统“分享”接口
- Q103:磨边的物体(Beveled Objects)
- 遭遇掌控欲望极强的上司,郁闷的项目
- Hbase笔记:批量导入
- JAVA面向对象中继承子父类构造函数-子类的实例化过程-图解
- STM32F407 USB CDC调试与经验总结
- 教你轻松创建谷歌账号、谷歌邮箱!
- ng4使用的音频文件_使用机器学习方法识别音频文件的音乐和演讲
- Android模拟器网络连接问题解决,解决小蚁安卓模拟器网络异常无法连接的方法...
- 电信网编号计划征求意见 物联网产业有望迎来风口
- 【C++从青铜到王者】第十八篇:C++之多态
- Cmpp发送wappush
- vue.cli3.0版本的用axios调用本地JSON数据报404解决方法