大写标记过滤器

编辑

将标记文本更改为大写。 例如,您可以使用 uppercase 过滤器将 the Lazy DoG 更改为 THE LAZY DOG

此过滤器使用 Lucene 的 UpperCaseFilter

根据语言,一个大写字符可以映射到多个小写字符。 使用 uppercase 过滤器可能会导致小写字符信息的丢失。

为了避免这种丢失,但仍然具有一致的字母大小写,请改用 lowercase 过滤器。

示例

编辑

以下 analyze API 请求使用默认的 uppercase 过滤器将 the Quick FoX JUMPs 更改为大写

resp = client.indices.analyze(
    tokenizer="standard",
    filter=[
        "uppercase"
    ],
    text="the Quick FoX JUMPs",
)
print(resp)
response = client.indices.analyze(
  body: {
    tokenizer: 'standard',
    filter: [
      'uppercase'
    ],
    text: 'the Quick FoX JUMPs'
  }
)
puts response
const response = await client.indices.analyze({
  tokenizer: "standard",
  filter: ["uppercase"],
  text: "the Quick FoX JUMPs",
});
console.log(response);
GET _analyze
{
  "tokenizer" : "standard",
  "filter" : ["uppercase"],
  "text" : "the Quick FoX JUMPs"
}

该过滤器生成以下标记

[ THE, QUICK, FOX, JUMPS ]

添加到分析器

编辑

以下 create index API 请求使用 uppercase 过滤器来配置新的 自定义分析器

resp = client.indices.create(
    index="uppercase_example",
    settings={
        "analysis": {
            "analyzer": {
                "whitespace_uppercase": {
                    "tokenizer": "whitespace",
                    "filter": [
                        "uppercase"
                    ]
                }
            }
        }
    },
)
print(resp)
response = client.indices.create(
  index: 'uppercase_example',
  body: {
    settings: {
      analysis: {
        analyzer: {
          whitespace_uppercase: {
            tokenizer: 'whitespace',
            filter: [
              'uppercase'
            ]
          }
        }
      }
    }
  }
)
puts response
const response = await client.indices.create({
  index: "uppercase_example",
  settings: {
    analysis: {
      analyzer: {
        whitespace_uppercase: {
          tokenizer: "whitespace",
          filter: ["uppercase"],
        },
      },
    },
  },
});
console.log(response);
PUT uppercase_example
{
  "settings": {
    "analysis": {
      "analyzer": {
        "whitespace_uppercase": {
          "tokenizer": "whitespace",
          "filter": [ "uppercase" ]
        }
      }
    }
  }
}