在使用字段的完整数据搜索字段时,我发现突出显示问题。我使用了自定义分析器,每个字段都存储为文本和关键字。
我正在使用空格作为搜索分析器。
我的自定义分析器是:
a2,a3,a4,a3
我的映射文件是:
{a2,a3,a4}
我的查询是:
3
我的重点结果是:
4
答案 0 :(得分:0)
我可以建议您进行此类查询(分析和映射保持不变):
GET /index-53370229/_doc/_search
{
"from": 0,
"size": 24,
"query": {
"bool": {
"should": [
{
"multi_match": {
"query": "monkey business",
"type": "phrase",
"slop": "2",
"fields": []
}
}
],
"minimum_should_match": 1
}
},
"highlight": {
"type": "fvh",
"fields": {
"field": {
"matched_fields": [
"field",
"field.keyword"
]
}
}
}
}
唯一的更改是在highlight
部分。结果,您将获得:
"highlight": {
"field": [
"<em>monkey business</em>"
]
}
我使用了matched_fields
属性,您可以在文档中对其进行阅读:https://www.elastic.co/guide/en/elasticsearch/reference/6.5/search-request-highlighting.html#matched-fields