语言分析器(Language)

Language 分析器 #

Easysearch 内置了 34 种语言专用分析器,每种都针对该语言的停用词、词干提取和字符归一化进行了优化。使用时只需将 analyzer 设置为对应的语言名称即可。

支持的语言列表 #

语言分析器名称特点
阿拉伯语arabic阿拉伯语归一化 + 词干提取
亚美尼亚语armenianSnowball 词干提取
巴斯克语basqueSnowball 词干提取
孟加拉语bengali印度语系归一化 + 词干提取
巴西葡萄牙语brazilian巴西葡萄牙语词干提取
保加利亚语bulgarian保加利亚语词干提取
加泰罗尼亚语catalan省音处理 + Snowball 词干提取
捷克语czech捷克语词干提取
丹麦语danishSnowball 词干提取
荷兰语dutch词干覆盖字典 + Snowball
英语english所有格处理 + Porter 词干提取
爱沙尼亚语estonianSnowball 词干提取
芬兰语finnishSnowball 词干提取
法语french省音处理 + 轻量词干提取
加利西亚语galician加利西亚语词干提取
德语german字符归一化 + 轻量词干提取
希腊语greek希腊语专用小写 + 词干提取
印地语hindi印度语系归一化 + 词干提取
匈牙利语hungarianSnowball 词干提取
印度尼西亚语indonesian印度尼西亚语词干提取
爱尔兰语irish专用小写 + 双重停用词过滤
意大利语italian省音处理 + 轻量词干提取
拉脱维亚语latvian拉脱维亚语词干提取
立陶宛语lithuanianSnowball 词干提取
挪威语norwegianSnowball 词干提取
波斯语persian字符过滤 + 阿拉伯语/波斯语归一化
波兰语polish波兰语词干提取
葡萄牙语portuguese轻量词干提取
罗马尼亚语romanian字符归一化 + Snowball 词干提取
俄语russianSnowball 词干提取
索拉尼语sorani索拉尼语归一化 + 词干提取
西班牙语spanish轻量词干提取
瑞典语swedishSnowball 词干提取
泰语thaiJava BreakIterator 泰语分词
土耳其语turkish专用小写(İ/I)+ Snowball

使用方式 #

在映射中指定对应语言名称即可:

PUT my-index
{
  "mappings": {
    "properties": {
      "content": {
        "type": "text",
        "analyzer": "french"
      }
    }
  }
}

也可以设置为索引的默认分析器:

PUT my-index
{
  "settings": {
    "analysis": {
      "analyzer": {
        "default": {
          "type": "french"
        }
      }
    }
  }
}

通用参数 #

所有语言分析器都支持以下参数(部分语言除外):

参数说明
stopwords自定义停用词列表,默认为对应语言的内置停用词
stem_exclusion不进行词干提取的词语列表

相关指南 #