【问题标题】:ElasticSearch highlighting the matched part in queryElasticSearch 突出显示查询中的匹配部分
【发布时间】:2015-03-06 15:45:06
【问题描述】:

我正在向 ElasticSearch 发送匹配查询,并且我正在取回已突出显示匹配字段的文档。我要做的是将一组文档映射到查询中的匹配子字符串。

例如,假设我使用“quick brown”进行查询。我想将文档“quick silver”映射到“quick”,将“brown fox”映射到“brown”,将“mr brown”映射到“brown”。

如果文档字段完全包含查询中的单词,这很简单。但是当我使用模糊、同义词、asciifolding 等时,事情会变得一团糟。在这种情况下,搜索结果中突出显示的部分甚至可能不会出现在我的搜索查询中。

是否可以在不复制我的应用程序上的分析器逻辑的情况下完成此任务?

【问题讨论】:

  • 你能发布一些代码来说明你的问题吗?也许是有效的映射/查询的简化版本,而您尝试做的事情不起作用?如果有起点,则问题更容易攻击。
  • 你也试过explain api吗?

标签: elasticsearch lucene elasticsearch-plugin lucene-highlighter


【解决方案1】:

当您尝试查找映射文档时,请使用简单查询字符串查询而不是匹配查询。并将运算符设置为或。所以 quick silver 作为查询将匹配带有 quick 或 silver 的文档。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-05-18
    • 2017-07-17
    • 2018-09-22
    • 1970-01-01
    • 2016-08-12
    • 2020-08-19
    • 2021-11-29
    • 1970-01-01
    相关资源
    最近更新 更多