【ES】--Elasticsearch的分词器详解

一、前言

最近项目需求,针对客户提出搜索引擎业务要做到自定义个性化,如输入简体或繁体能能够互相查询、有的关键词不能被分词搜索等等。为更好解决这些问题,“分词器”的原理和使用至关重要。

二、分词器原理

当 ES 自带的分词器不能满足需求的情况下,可以通过组合不同的 Character Filters,Tokenizer,Token Filter 来实现。
在这里插入图片描述
首先字符串经过字符过滤器(character filter),他们的工作是在分词前处理字符串。字符过滤器能够去除 HTML 标记,或者转化为“&”为“and”。
然后,分词器(tokenizer)被分词为独立的词【按照一定的规则,对字符串进行划分单词】。一个简单的分词器(tokenizer)可以根据空格或逗号将词语分开。
最后,每个词都通过分词过滤器(Token filter)【将切分的单词进行加工、大小写转换、删除stopwords、增加同义词等】,它可以修改词(例如将“Quick”转为小写),去掉词(例如停用词像“a”、“and”、“the”等等),或者增加词(例如同义词像“a”、“and”、“the”等等)或者增加词(例如同义词像“jump”

相关推荐

  1. Elasticsearch详解es

    2024-02-13 22:36:01       17 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-02-13 22:36:01       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-02-13 22:36:01       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-02-13 22:36:01       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-02-13 22:36:01       18 阅读

热门阅读

  1. 一篇文章学透所有Python知识

    2024-02-13 22:36:01       32 阅读
  2. Python列表中的clear功能及用法举例

    2024-02-13 22:36:01       34 阅读
  3. 突破编程_C++_面试(基础知识(13))

    2024-02-13 22:36:01       26 阅读
  4. 读书笔记:《人件:PeopleWare》

    2024-02-13 22:36:01       32 阅读
  5. 阿里云Redis

    2024-02-13 22:36:01       29 阅读
  6. C语言:函数

    2024-02-13 22:36:01       29 阅读
  7. Dev-c++跑酷小游戏 1.0.0

    2024-02-13 22:36:01       27 阅读
  8. KY141 最大连续子序列

    2024-02-13 22:36:01       36 阅读
  9. 团队管理--程序员值班

    2024-02-13 22:36:01       35 阅读
  10. spring mvc和 spring boot 以及 spring cloud的区别

    2024-02-13 22:36:01       27 阅读