因此,我正在尝试使用正确的分析器为 Windows 凭据字段设置新的索引映射,该字段的格式为domain\username
.
我希望能够搜索域、用户名和域\用户名。但是默认分析器似乎忽略了反斜杠(意思是,如果我尝试搜索域\用户名,它将搜索“域或用户名”而忽略反斜杠),如果我尝试使用空格分析器,它似乎只匹配域\用户名。
有小费吗?
因此,我正在尝试使用正确的分析器为 Windows 凭据字段设置新的索引映射,该字段的格式为domain\username
.
我希望能够搜索域、用户名和域\用户名。但是默认分析器似乎忽略了反斜杠(意思是,如果我尝试搜索域\用户名,它将搜索“域或用户名”而忽略反斜杠),如果我尝试使用空格分析器,它似乎只匹配域\用户名。
有小费吗?
您可以使用路径层次标记器,将反斜杠设置为分隔符 -此处的文档 尝试:
PUT my_index
{
"settings": {
"analysis": {
"analyzer": {
"custom_path_tree": {
"tokenizer": "custom_hierarchy"
},
"custom_path_tree_reversed": {
"tokenizer": "custom_hierarchy_reversed"
}
},
"tokenizer": {
"custom_hierarchy": {
"type": "path_hierarchy",
"delimiter": "\"
},
"custom_hierarchy_reversed": {
"type": "path_hierarchy",
"delimiter": "\",
"reverse": "true"
}
}
}
},
"mappings": {
"properties": {
"file_path": {
"type": "text",
"fields": {
"tree": {
"type": "text",
"analyzer": "custom_path_tree"
},
"tree_reversed": {
"type": "text",
"analyzer": "custom_path_tree_reversed"
}
}
}
}
}
}
POST my_index/_analyze
{
"analyzer": "custom_path_tree",
"text": "C:\Windows\Users"
}