关键词分词器

关键词分词器 #

关键词(keyword)分词器根本不会对文本进行分词。相反,它将整个输入视为单个词元,不会将其拆分成单个的词项。关键词分词器常用于包含电子邮件地址、网址或产品 ID 的字段,以及其他不需要进行分词的情况。

参考样例 #

以下命令创建一个名为 my_keyword_index 使用关键词分词器的索引:

PUT /my_keyword_index
{
  "mappings": {
    "properties": {
      "my_field": {
        "type": "text",
        "analyzer": "keyword"
      }
    }
  }
}

配置自定义分词器 #

以下命令来配置一个自定义分词器的索引,该自定义分词器的作用等同于关键词分词器:

PUT /my_custom_keyword_index
{
  "settings": {
    "analysis": {
      "analyzer": {
        "my_keyword_analyzer": {
          "tokenizer": "keyword"
        }
      }
    }
  }
}

产生的词元 #

以下请求来检查使用该分词器生成的词元:

POST /my_custom_keyword_index/_analyze
{
  "analyzer": "my_keyword_analyzer",
  "text": "Just one token"
}

返回内容包含产生的词元

{
  "tokens": [
    {
      "token": "Just one token",
      "start_offset": 0,
      "end_offset": 14,
      "type": "word",
      "position": 0
    }
  ]
}