Elasticsearch附带有大量的内建分析器,可以在任意索引中使用而不需要进一步的配置:
标准分析器使用Unicode文本分隔算法,在单词边界将文本切分为分词。它删除大部分标点符号,将分词转化为小写,还支持删除停词。
简单分析器在遇到非字母的字符时将文本切分成分词,然后将分词转化为小写。
空格分析器在遇到空白符时将文本切分成分词。不会将分词分词转化为小写。
停词分析器和简单分析器一样,但是支持删除停词。
关键词分析器是一个“空”分析器,它接收任意的文本,将相同的文本作为单个分词输出。
模式分析器使用正则表达式将文本切分成分词。它支持转化小写字母和停词。
Elasticsearch提供多个特定语言的分析器,比如english
或french
。
指纹分析器是一种专门的分析器,其产生可用于重复检测的指纹。
如果没有适合需求的分析器,你可以组合适当的字符分析器、分词、分词过滤器来创建一个自定义的分析器。