tokenizer 和 analyzer 的关系


tokenizer 和 analyzer 的关系

Tokenizer、Token-filter 和 analyzer:

  • tokenizer:分词器
  • analyzer:分析器
  • token-filter:分词过滤器

1、Tokenizer(分词器)

分词,就是将一个字符串,按照某种特定规则打散为多个字符串的过程。

2、Token-filter(分词过滤器)

分词过滤器,是对分词器处理后得到的子字符串,进行字符的修改。 (例如:大小写转换、时态、复数……)

3、Analyzer(分析器)

分析器是分词器和分词过滤器的结合。

ES 使用分析器(Analyzer)对文档进行分词,ES 中内置了很多分析器供我们使用,我们也可以定制自己的分析器。

一个分析器有 3 个组成部分,分析过程会依次经过这些部分:

  1. Character Filters:字符过滤,用于删去某些字符。该组件可以有 0 或多个。
  2. Tokenizer:分词过程,按照某个规则将文档切分为单词,比如用空格来切分。该组件有且只能有一个。
  3. Token Filter:对切分好的单词进一步加工,比如大小写转换,删除停用词等。该组件可以有 0 或多个。

也就是说,分词器就是划分子字符串,分词过滤器就是子字符串的格式转换,分析器是两者结合。

tokenizer和analyzer的关系图


文章作者: Pudding
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Pudding !
  目录