kuromoji_readingform 令牌过滤器编辑

kuromoji_readingform 令牌过滤器将令牌替换为其读音形式,可以是片假名或罗马字。它接受以下设置

use_romaji
是否应该输出罗马字读音形式而不是片假名。默认为 false

使用预定义的 kuromoji_readingform 过滤器时,use_romaji 设置为 true。但是,在定义自定义 kuromoji_readingform 时,默认值为 false。使用自定义形式的唯一原因是,如果你需要片假名读音形式

PUT kuromoji_sample
{
  "settings": {
    "index": {
      "analysis": {
        "analyzer": {
          "romaji_analyzer": {
            "tokenizer": "kuromoji_tokenizer",
            "filter": [ "romaji_readingform" ]
          },
          "katakana_analyzer": {
            "tokenizer": "kuromoji_tokenizer",
            "filter": [ "katakana_readingform" ]
          }
        },
        "filter": {
          "romaji_readingform": {
            "type": "kuromoji_readingform",
            "use_romaji": true
          },
          "katakana_readingform": {
            "type": "kuromoji_readingform",
            "use_romaji": false
          }
        }
      }
    }
  }
}

GET kuromoji_sample/_analyze
{
  "analyzer": "katakana_analyzer",
  "text": "寿司" 
}

GET kuromoji_sample/_analyze
{
  "analyzer": "romaji_analyzer",
  "text": "寿司" 
}

返回 スシ

返回 sushi