如何在不使用小写的情况下使用Elasticsearch标准分析器

时间:2018-09-21 13:17:51

标签: elasticsearch elastic-stack analyzer standardanalyzer

我正在尝试使用“标准”分析器的预设在Elasticsearch中创建一个分析器,但要进行一次更改-不使用小写字母。

我已经尝试过像这样链接空白和标准分析器:

PUT /standard_uppercase
{
"settings": {
"analysis": {
  "analyzer": {
    "rebuilt_standard": {
      "tokenizer": "standard",
      "filter": [
        "standard",
        "whitespace"       
      ]
    }
  }
}
}
}

但这不会提供所需的结果。有没有办法只覆盖分析仪的小写字母,而零售标准分析仪的所有现有功能呢?

谢谢。

1 个答案:

答案 0 :(得分:2)

根据documentation

  

定义

     

标准分析仪包括:

     

令牌生成器

    Standard Tokenizer 
     

令牌过滤器

    Standard Token Filter
    Lower Case Token Filter
    Stop Token Filter (disabled by default)

因此,您可以通过这种方式实现目标:

PUT /standard_uppercase
{
  "settings": {
    "analysis": {
      "analyzer": {
        "rebuilt_standard": {
          "tokenizer": "standard",
          "filter": [
            "standard"   
          ]
        }
      }
    }
  }
}