es-分词器

作者: 宙斯是只猫 | 来源:发表于2019-07-04 23:47 被阅读0次

在es中内置了一些分词器:standard,simple,whitespace,stop,keyword,pattern,language,Fingerprint,具体的一些介绍如下:内置分词器,分词器其实可以由三部分组成:character filter,tokenizer和token filterhttps://www.elastic.co/guide/en/elasticsearch/reference/current/analyzer-anatomy.html#_tokenizer

1.character filter:是最早处理字符串的一个组件,他可以对整个串进行处理,如下

GET _analyze
{
  "tokenizer" : "whitespace",
  "filter" : ["lowercase"],
  "char_filter" : ["html_strip"],
  "text" : "this is a <b>test</b>"
}

首先对串进行cha_filter,html_strip是内置的一个fiter,用于去除串中的html标签,去完标签后,串变为 this is a test,交给 tokenizer来处理

2.tokenizer:进行分词,切分的规则,可以根据空格来切分(whitespace)或者不切分,如keyword,上面被tokenizer分词后,变为 this,is,a,test,交给token filter

3.token filter:就是对处理经过tokenizer切割后每一个token,比如上面的lowercase,将所有的大写变成小写,或者指定停用词,去掉this is 等等

analyzer

相关文章

网友评论

    本文标题:es-分词器

    本文链接:https://www.haomeiwen.com/subject/mszdhctx.html