es - elasticsearch自定义分析器 - 内建分词过滤器 - 10
世界上并没有完美的程序,但是我们并不因此而沮丧,因为写程序就是一个不断追求完美的过程。
自定义分析器 :
- Character filters :
1. 作用 : 字符的增、删、改转换
2. 数量限制 : 可以有0个或多个
3. 内建字符过滤器 :
1. HTML Strip Character filter : 去除html标签
2. Mapping Character filter : 映射替换
3. Pattern Replace Character filter : 正则替换 - Tokenizer :
1. 作用 :
1. 分词
2. 记录词的顺序和位置(短语查询)
3. 记录词的开头和结尾位置(高亮)
4. 记录词的类型(分类)
2. 数量限制 : 有且只能有一个
3. 分类 :
1. 完整分词 :
1. Standard
2. Letter
3. Lowercase
4. whitespace
5. UAX URL Email
6. Classic
7. Thai
2. 切词 :
1. N-Gram
2. Edge N-Gram
3. 文本 :
1. Keyword
2. Pattern
3. Simple Pattern
4. Char Group
5. Simple Pattern split
6. Path - Token filters :
1. 作用 : 分词的增、删、改转换
2. 数量限制 : 可以有0个或多个
3. 分类 :
1. apostrophe
2. asciifolding
3. cjk bigram
4. cjk width
5. classic
6. common grams
7. conditional
8. decimal digit
9. delimited payload
10. dictionary decompounder
11. edge ngram
12. elision
13. fingerprint
14. flatten_graph
15. hunspell
16. hyphenation decompounder
17. keep types
18. keep words
19. keyword marker
20. keyword repeat
21. kstem
22. length
23. limit token count
24. lowercase
25. min_hash
26. multiplexer
27. ngram
28. normalization
29. pattern_capture
30. pattern replace
31. porter stem
32. predicate script
33. remove duplicates
34. reverse
35. shingle
36. snowball
37. stemmer
今天演示 : 34-37
# reverse token filter
# 作用 : 分词反转GET /_analyze
{"tokenizer" : "whitespace","filter" : ["reverse"],"text" : ["hello gooding me"]
}# 结果
{"tokens" : [{"token" : "olleh","start_offset" : 0,"end_offset" : 5,"type" : "word","position" : 0},{"token" : "gnidoog","start_offset" : 6,"end_offset" : 13,"type" : "word","position" : 1},{"token" : "em","start_offset" : 14,"end_offset" : 16,"type" : "word","position" : 2}]
}
# shingle token filter
# 作用 : 分词重复显示,连词
# 配置项 :
# 1. max_shingle_size :
# 2. min_shingle_size :
# 3. output_unigrams : 是否输出原始值,默认true
# 4. output_unigrams_if_no_shingles : 如果没有shingle则输出原始值,如果有则输出shingle
# 5. token_separator : shingle的连接符,默认空格
# 6. filter_token : 占位符,如去除停用词后的位置由filter_token指定的词代替,默认下划线GET /_analyze
{"tokenizer": "whitespace","filter": [{"type" : "stop","stopwords" : ["good"]}, {"type" : "shingle","token_separator" : "+"}],"text": ["hello good me this is a dog"]
}# 结果
{"tokens" : [{"token" : "hello","start_offset" : 0,"end_offset" : 5,"type" : "word","position" : 0},{"token" : "hello+_","start_offset" : 0,"end_offset" : 11,"type" : "shingle","position" : 0,"positionLength" : 2},{"token" : "_+me","start_offset" : 11,"end_offset" : 13,"type" : "shingle","position" : 1,"positionLength" : 2},{"token" : "me","start_offset" : 11,"end_offset" : 13,"type" : "word","position" : 2},{"token" : "me+this","start_offset" : 11,"end_offset" : 18,"type" : "shingle","position" : 2,"positionLength" : 2},{"token" : "this","start_offset" : 14,"end_offset" : 18,"type" : "word","position" : 3},{"token" : "this+is","start_offset" : 14,"end_offset" : 21,"type" : "shingle","position" : 3,"positionLength" : 2},{"token" : "is","start_offset" : 19,"end_offset" : 21,"type" : "word","position" : 4},{"token" : "is+a","start_offset" : 19,"end_offset" : 23,"type" : "shingle","position" : 4,"positionLength" : 2},{"token" : "a","start_offset" : 22,"end_offset" : 23,"type" : "word","position" : 5},{"token" : "a+dog","start_offset" : 22,"end_offset" : 27,"type" : "shingle","position" : 5,"positionLength" : 2},{"token" : "dog","start_offset" : 24,"end_offset" : 27,"type" : "word","position" : 6}]
}
# snowball token filter
# 作用 : 词干提取GET /_analyze
{"tokenizer" : "whitespace","filter" : ["snowball"],"text" : ["hello gooding me"]
}# 结果
{"tokens" : [{"token" : "hello","start_offset" : 0,"end_offset" : 5,"type" : "word","position" : 0},{"token" : "good","start_offset" : 6,"end_offset" : 13,"type" : "word","position" : 1},{"token" : "me","start_offset" : 14,"end_offset" : 16,"type" : "word","position" : 2}]
}
# stemmer token filter
# 作用 : 词干提取
# 配置项 :
# 1. language : 多种语言
# 2. name : 语言的别名GET /_analyze
{"tokenizer" : "whitespace","filter" : ["stemmer"],"text" : ["hello gooding me"]
}# 结果
{"tokens" : [{"token" : "hello","start_offset" : 0,"end_offset" : 5,"type" : "word","position" : 0},{"token" : "good","start_offset" : 6,"end_offset" : 13,"type" : "word","position" : 1},{"token" : "me","start_offset" : 14,"end_offset" : 16,"type" : "word","position" : 2}]
}
es - elasticsearch自定义分析器 - 内建分词过滤器 - 10相关推荐
- es - elasticsearch 自定义分析器 - 内建分词过滤器 - 11
世界上并没有完美的程序,但是我们并不因此而沮丧,因为写程序就是一个不断追求完美的过程. 自定义分析器 : Character filters : 1. 作用 : 字符的增.删.改转换 ...
- ElasticSearch自定义分析器(custom analyzer)
基于elasticsearch7.6.1 和 kibana7.6.1 一.基础知识 一个完整的分析器Analyzer包括如下三个组件: Character Filters: 对文本信息就行预处理,比如 ...
- Elasticsearch 自定义分析器Analyzer
java学习讨论群:725562382 2,自定义分析器Analyzer curl -X PUT "192.168.0.120:9200/simple_example" -H 'C ...
- ES(ElasticSearch)自定义分词字典
1.下载ik分词器 注意版本和包 2.安装 将下载的包解压到plugins中,例如:../elasticsearch\plugins\ik 3.构建停用词和分词词库 1)特定领域有关键词,进行整理去重 ...
- es elasticsearch整合kibana,HanLP分词器
目录 一.准备 二.安装 1.解压 elasticsearch 2.解压 kibana 3.解压 elasticsearch-analysis-hanlp 三.启动&测试 1. elastic ...
- Elasticsearch –使用模式替换过滤器和自定义分析器忽略查询中的特殊字符
使用Elasticsearch 5,我们有一个字段,例如驾驶执照编号,其中的值可能包含特殊字符,并且由于用户在有限的验证范围内输入了值,因此值的大小写不一致. 例如,这些是假设值: CA-123-45 ...
- 【Es】ElasticSearch 自定义分词器
1.分词器 转载:https://blog.csdn.net/gwd1154978352/article/details/83343933 分词器首先看文章:[Elasticsearch]Elasti ...
- ES自定义Analyzer扩展IK分词
IPS产品关键词搜索需求要对英文标题.品牌(英文).规格属性(英文).产品型号.描述属性.商品特征.关键搜索词等字段进行模糊匹配搜索 前期由于拿不到数据也不清楚具体数据是什么样的,并且线上集群也没有安 ...
- Elasticsearch 内置分词器
Elasticsrarch 提供了8中内置分词器,它们可以无需任何配置即可使用.每一个分词器都由3部分组件组成:Character Filters.Tokenizer和Token Filters,这3 ...
最新文章
- 如何提高在家办公的效率?
- JVM 学习笔记 1. JVM 运行模型
- js_调试_01_14 个你可能不知道的 JavaScript 调试技巧
- Acwing 252. 树
- Linux设备树语法详解【转】
- mac实现ssh的免密远程登录
- 程序员自我修养笔记1
- 基于STM32的电池管理系统触摸屏设计方案
- POJ_2823 Sliding Window(单调队列)
- Ruby类的创建与使用
- OpenGL超级宝典(第7版)笔记12 前三章回顾 OpenGL扩展简介
- 后台管理系统前端模板(html + CSS + JavaScript)
- Android LinearLayout实现下拉刷新
- Windows和Linux下搭建J2sdk的环境
- 用色环图帮你搞定配色
- win10系统下摄像头无法打开的解决方法
- CentOS7设置console口能连接
- 同济:004.三角函数(1.1映射与函数)
- 优化vue打包chunk-vendors.js 过大
- uni-app实现多图片上传
热门文章
- A*算法(超级详细讲解,附有举例的详细手写步骤)
- rom个性刷机也完美,你刷机了吗?
- 运维工程师和网络工程师的区别?
- win10设置虚拟内存_Win10安装后必做的优化,解决电脑卡顿问题,实用收藏系列...
- Python获取股票数据并绘制相应K线图,看这个就够了!
- 为什么说超快恢复二极管MURF1040CT-ASEMI比普通二极管好
- Matrix Recurrence
- Bootstrap 组件:Glyphicons 字体图标
- python爬虫(14)获取淘宝MM个人信息及照片(中)
- DIN模型pytorch代码逐行细讲