指定查询参数的 highlight 字段
POST /sms-logs-index/_search
{
"query": {
"match": {
"smsContent": "魅力"
}
},
"highlight": {
"fields": {
"smsContent": {}
},
"pre_tags": "<font color='red'>",
"post_tags": "</font>",
"fragment_size": 10
}
}
在 height 字段中,有多个参数,fields 是指定高亮字段
其他三个省略时,则默认使用 em 标签包裹。(em表示强调文本)
- fragment_size :指定高亮数据展示多少个字符回来;
- pre_tag:指定前缀标签,如 <font color=”red”>
- post_tags:指定后缀标签,如 </font>
- field:指定那个字段为高亮字段
- type:type字段允许强制使用特定的高亮策略。可以配置的参数:unified, plain and fvh
更多高亮参数:
参数 | 说明 |
---|---|
boundary_chars | 包含每个边界字符的字符串。默认为,! ?\ \ n。 |
boundary_max_scan | 扫描边界字符的距离。默认为20。 |
boundary_scanner | 指定如何分割突出显示的片段,支持chars, sentence, or word三种方式。 |
boundary_scanner_locale | 用来设置搜索和确定单词边界的本地化设置,此参数使用语言标记的形式(“en-US”, “fr-FR”, “ja-JP”) |
encoder | 表示代码段应该是HTML编码的:默认(无编码)还是HTML (HTML-转义代码段文本,然后插入高亮标记) |
fields | 指定检索高亮显示的字段。可以使用通配符来指定字段。例如,可以指定comment_*来获取以comment_开头的所有文本和关键字字段的高亮显示。 |
force_source | 根据源高亮显示。默认值为false。 |
fragmenter | 指定文本应如何在突出显示片段中拆分:支持参数simple或者span。 |
fragment_offset | 控制要开始突出显示的空白。仅在使用fvh highlighter时有效。 |
fragment_size | 字符中突出显示的片段的大小。默认为100。 |
highlight_query | 突出显示搜索查询之外的其他查询的匹配项。这在使用重打分查询时特别有用,因为默认情况下高亮显示不会考虑这些问题。 |
matched_fields | 组合多个匹配结果以突出显示单个字段,对于使用不同方式分析同一字符串的多字段。所有的matched_fields必须将term_vector设置为with_positions_offsets,但是只有将匹配项组合到的字段才会被加载,因此只有将store设置为yes才能使该字段受益。只适用于fvh highlighter。 |
no_match_size | 如果没有要突出显示的匹配片段,则希望从字段开头返回的文本量。默认为0(不返回任何内容)。 |
number_of_fragments | 返回的片段的最大数量。如果片段的数量设置为0,则不会返回任何片段。相反,突出显示并返回整个字段内容。当需要突出显示短文本(如标题或地址),但不需要分段时,使用此配置非常方便。如果number_of_fragments为0,则忽略fragment_size。默认为5。 |
order | 设置为score时,按分数对突出显示的片段进行排序。默认情况下,片段将按照它们在字段中出现的顺序输出(order:none)。将此选项设置为score将首先输出最相关的片段。每个高亮应用自己的逻辑来计算相关性得分。 |
phrase_limit | 控制文档中所考虑的匹配短语的数量。防止fvh highlighter分析太多的短语和消耗太多的内存。提高限制会增加查询时间并消耗更多内存。默认为256。 |
pre_tags | 与post_tags一起使用,定义用于突出显示文本的HTML标记。默认情况下,突出显示的文本被包装在和标记中。指定为字符串数组。 |
post_tags | 与pre_tags一起使用,定义用于突出显示文本的HTML标记。默认情况下,突出显示的文本被包装在和标记中。指定为字符串数组。 |
require_field_match | 默认情况下,只突出显示包含查询匹配的字段。将require_field_match设置为false以突出显示所有字段。默认值为true。 |
tags_schema | 设置为使用内置标记模式的样式。 |
type | 使用的高亮模式:unified, plain, or fvh. 默认为 unified。 |