elasticsearch - 确定哪些词在模糊搜索中匹配

标签 elasticsearch

我正在运行模糊搜索,需要查看匹配了哪些词。例如,如果我正在搜索查询 testing,并且它匹配一个包含句子 The boy was resting 的字段,我需要能够知道匹配项是由于单词 resting

我尝试设置参数explain = true,但它似乎没有包含我需要的信息。有什么想法吗?

最佳答案

好的,这就是我要找的:

经过一些研究,我找到了 Highlighting feature Elasticsearch 。

默认情况下,它返回匹配项周围的上下文片段,但您可以将片段大小设置为查询长度以仅返回完全匹配项。例如:

{
    query : query,
    highlight : {
        "fields" : {
            'text' : {
                "fragment_size" : query.length
            }
        }
    }
}

关于elasticsearch - 确定哪些词在模糊搜索中匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21764766/

相关文章:

Elasticsearch:找到被删除的文档?

sql-server - 如何使ElasticSearch集群与数据库同步?

django - 如何实现干草堆搜索获取自动完成功能

elasticsearch - 在ElasticSearch中增加队列容量

java - Elasticsearch 结果与我的映射字段查询不太准确

elasticsearch - 关于联合查询有疑问吗?

elasticsearch - 使用无痛脚本编写嵌套文档上的聚合

regex - ElasticSearch 正则表达式过滤器

python - 从elasticsearch获取字段的每个唯一组合的第一条记录

laravel - Elasticsearch 和 Laravel scout-elasticsearch-driver 返回空响应