关键字分析器
keyword
分析器根本不进行文本分词。相反,它将整个输入视为单个词元,并且不会将其分解成单独的词元。keyword
分析器常用于包含电子邮件地址、URL 或产品 ID 的字段,以及其他不需要分词的情况。
示例
使用以下命令创建名为 my_keyword_index
且带有 keyword
分析器的索引
PUT /my_keyword_index
{
"mappings": {
"properties": {
"my_field": {
"type": "text",
"analyzer": "keyword"
}
}
}
}
配置自定义分析器
使用以下命令配置一个索引,该索引使用与 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
}
]
}