孟加拉语归一化过滤器(Bengali Normalization)

孟加拉语归一化过滤器 #

bengali_normalization 词元过滤器对孟加拉语(বাংলা)文本进行 Unicode 归一化,统一字符的多种表示形式。

归一化规则 #

处理说明
Nukta 合成将 base + nukta 组合转为对应的预组合字符
变体统一统一视觉上相同但编码不同的字符
印度语系通用归一化indic_normalization 基础上进一步处理

使用示例 #

PUT my-bengali-index
{
  "settings": {
    "analysis": {
      "filter": {
        "bengali_norm": {
          "type": "bengali_normalization"
        }
      },
      "analyzer": {
        "my_bengali": {
          "type": "custom",
          "tokenizer": "standard",
          "filter": ["lowercase", "indic_normalization", "bengali_norm"]
        }
      }
    }
  }
}

测试效果 #

GET /_analyze
{
  "tokenizer": "standard",
  "filter": ["bengali_normalization"],
  "text": "বাংলাদেশ"
}

参数 #

此过滤器不接受任何参数。

在语言分析器中的位置 #

孟加拉语分析器 内置了此过滤器,其分析链为:

standard 分词器 → lowercasedecimal_digitindic_normalizationbengali_normalizationstop(孟加拉语) → bengali_stemmer