05.analysis-normalizer应用

1. 简介

   normalizer和analyzer类似,不同的是normalizer 只会产出单个的token,所以normalizer 不包含tokenizer,只是由char_filter和token filter构成,因为normalnizer只会处理单个token,所以只有那些针对每个char工作的token filter是可以用来构建normalizer的,比如 lowercase filter是可以的,但是stemer filter则是不行的。

目前可以在normalizer中使用的filter有

arabic_normalization, 
asciifolding, 
bengali_normalization, 
cjk_width,
decimal_digit, 
elision, 
german_normalization,
 hindi_normalization,
indic_normalization,
lowercase, 
persian_normalization, 
scandinavian_folding, 
serbian_normalization, 
sorani_normalization, 
uppercase.

一个样例


PUT index
{
  "settings": {
    "analysis": {
      "char_filter": {
        "quote": {
          "type": "mapping",
          "mappings": [
            "« => \"",
            "» => \""
          ]
        }
      },
      "normalizer": {
        "my_normalizer": {
          "type": "custom",
          "char_filter": ["quote"],
          "filter": ["lowercase", "asciifolding"]
        }
      }
    }
  },
  "mappings": {
    "properties": {
      "foo": {
        "type": "keyword",
        "normalizer": "my_normalizer"
      }
    }
  }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值