Elasticsearch系列-Analyzer分词

Analysis与Analyzer

Analysis:文本分析是把全文本转换一系列单词(term/ token)的过程,也叫分词。
Analyzer:ES的Analysis是通过Analyzer来实现的,ES有内置的分析器,也可以使用一些定制化分析器。
除了在数据写入时会做分词处理,在匹配Query语句时,也会使用到分词处理,使用到分词器去对查询语句进行分析。

Analyzer的组成

分词器是专门处理分词的组件,Analyzer由三部分组成:

  • Character Filters:针对原始文本处理,例如去除html。
  • Tokenizer:按照规则,切分为单词。
  • Token Filter:将切分的单词进行加工,小写,删除stopwords,增加同义词。

ES的内置分词器

分词器描述
Standard Analyzer默认分词器,按词切分,小写处理
Simple Analyzer按照非字母切分(符号被过滤),小写处理
Stop Analyzer小写处理,停用词过滤(the,a, is)
Whitespace Analyzer按照空格切分,不转小写
Keyword Analyzer不分词,直接将输入当做输出
Patter Analyzer正则表达式,默认 \W+(非字符分隔)
Language提供了30多种常见语言的分词器
Customer Analyzer自定义分词器
分词器TokenizerToken FiltersCharacter Filters
Standard AnalyzerStandardStandard,Lower Case,Stop(默认关闭)
Simple AnalyzerLower Case
Stop AnalyzerLower CaseStop
Whitespace AnalyzerWhiteSpace
Keyword AnalyzerKeyword
Patter AnalyzerPatternLower Case,Stop

中文分词器

分词器描述TokenizerToken FiltersCharacter Filters
ICU AnalyzerICU中文分词 ,需要安装Elasticsearch-plugin install analyzer-icuICU TokenizerNormalization,Folding,Collation,TransformNormalization
IK支持自定义词库,支持热更新分词字典
THULAC清华大学自然语言处理和社会人文计算实验室的一套中文分词器

Analyzer API

Analyzer API官网介绍

GET /_analyze

POST /_analyze

GET /<index>/_analyze

POST /<index>/_analyze

示例:
GET /_analyze
{
  "analyzer" : "standard",
  "text" : "Quick Brown Foxes!"
}

结语

更多详细分词处理,可以去官网看看。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Layne_lei

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值