使用注释高亮器
编辑使用 annotated
高亮器编辑
annotated-text
插件包含一个自定义高亮器,旨在以尊重原始标记的方式标记搜索结果。
# Example documents PUT my-index-000001/_doc/1 { "my_field": "The cat sat on the [mat](sku3578)" } GET my-index-000001/_search { "query": { "query_string": { "query": "cats" } }, "highlight": { "fields": { "my_field": { "type": "annotated", "require_field_match": false } } } }
注释高亮器基于 unified
高亮器,并支持相同的设置,但不使用 pre_tags
或 post_tags
参数。注释高亮器不使用类似 html 的标记(如 <em>cat</em>
),而是使用与注释相同的类似 markdown 的语法,并注入一个键值对注释,其中 _hit_term
是键,匹配的搜索词是值,例如:
The [cat](_hit_term=cat) sat on the [mat](sku3578)
注释高亮器会尽量尊重原文中任何现有的标记。
- 如果搜索词与现有注释的位置完全匹配,则
_hit_term
键将合并到现有注释的(...)
部分中使用的类似 url 的语法中。 - 但是,如果搜索词与现有注释的跨度重叠,则会破坏标记格式,因此会删除原始注释,并在结果中使用仅包含搜索命中信息的注释来代替。
- 原始文本中任何不重叠的注释都将保留在高亮器选择中。