波斯语归一化过滤器(Persian Normalization)

波斯语归一化过滤器 #

persian_normalization 词元过滤器对波斯语(فارسی)文本进行字符归一化,统一阿拉伯语和波斯语书写变体。

归一化规则 #

处理说明
阿拉伯语 Yaa → 波斯语 Yaa统一 ي → ی
阿拉伯语 Kaf → 波斯语 Kaf统一 ك → ک
变音符号移除移除阿拉伯语 harakat 标记
搭配 arabic_normalization建议与 arabic_normalization 一起使用

使用示例 #

PUT my-persian-index
{
  "settings": {
    "analysis": {
      "filter": {
        "persian_norm": {
          "type": "persian_normalization"
        }
      },
      "analyzer": {
        "my_persian": {
          "type": "custom",
          "tokenizer": "standard",
          "filter": ["lowercase", "arabic_normalization", "persian_norm"]
        }
      }
    }
  }
}

测试效果 #

GET /_analyze
{
  "tokenizer": "standard",
  "filter": ["arabic_normalization", "persian_normalization"],
  "text": "فارسی"
}

参数 #

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

在语言分析器中的位置 #

波斯语分析器 内置了此过滤器,其分析链为:

mapping 字符过滤器(零宽非连接符)→ standard 分词器 → lowercasedecimal_digitarabic_normalizationpersian_normalizationstop(波斯语)