es分词器

源文档来自es官方文档:https://www.elastic.co/guide/en/elasticsearch/reference/current/analysis-analyzers.html

analyzer可以由不同的character filters,tokenizer,token filters的组成。

es自带了许多内置的Analyzer分析器,无需配置就可以直接在index中使用:

标准分词器(standard):以单词边界切分字符串为terms,根据Unicode文本分割算法。它会移除大部分的标点符号,小写分词后的term,支持停用词。

简单分词器(simple):该分词器会在遇到非字母时切分字符串,小写所有的term。

空格分词器(whitespace):遇到空格字符时切分字符串,

停用词分词器(stop):类似简单分词器,同时支持移除停用词。

关键词分词器(keyword):无操作分词器,会输出与输入相同的内容作为一个single term。

模式分词器(pattern):使用正则表达式讲字符串且分为terms。支持小写字母和停用词。

语言分词器(language):支持许多基于特定语言的分词器,比如english或french。

签名分词器(fingerprint):是一个专家分词器,会产生一个签名,可以用于去重检测。

Custom 分词器:如果内置分词器无法满足你的需求,可以自定义custom分词器,根据不同的character filters,tokenizer,token filters的组合 。

分词器(tokenizer):输入字符流,拆分为单个的tokens(通常是独立的单词),输出字符流。  分词器同样负责记录term的顺序或者位置(用于phrase和word proximity queriesand the start and end character offsets of the original word which the term represents (used for highlighting search snippets)。主要有三类:

1、面向单词的分词器

    把文档且分为单个的word。

2、部分单词分词器:把字符串和单词切分为小的分端,用于部分单词匹配。

3、结构文本分词器:通常和结构文本一块使用,比如标识,邮件地址,邮编,路径(比如文件),而不是全文。


发布了30 篇原创文章 · 获赞 4 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/u013015681/article/details/79687218