【问题标题】:solr - only highligt matched words in resultssolr - 结果中仅突出匹配的单词
【发布时间】:2015-07-15 19:15:59
【问题描述】:

我的参数查询:

q = (subject:zielone AND subject:aaaaa) OR subject:czerwone
hl=true
hl.fl=subject,description

第一部分查询:(subject:zielone AND subject:aaaaa)返回0个结果(没关系)

第二部分查询:OR subject:czerwone 返回许多文档(没关系)

但是当我想突出显示部分时,我有:

"4037903":{
  "subject":["<em>zielone</em> <em>czerwone</em>"]},
"4040790":{
  "subject":["<em>zielone</em> <em>czerwone</em>"]},
"4228003":{
  "subject":["<em>zielone</em> <em>czerwone</em>"]},

我只想找到突出显示的单词:

"4037903":{
  "subject":["zielone <em>czerwone</em>"]},
"4040790":{
  "subject":["zielone <em>czerwone</em>"]},
"4228003":{
  "subject":["zielone <em>czerwone</em>"]},

它是怎么来的?

同样的问题(但没有答案): How to prevent solr from highlighting unmatched terms?

【问题讨论】:

    标签: solr


    【解决方案1】:

    我认为你可以使用requireFieldMatch

    如果为真,则只有在查询匹配时才会突出显示字段 这个特定的字段(通常,术语在所有 请求的字段,无论哪个字段与查询匹配)。这个 仅当“hl.usePhraseHighlighter”为“true”时才生效。

    默认值为“假”。

    要查看所有高亮参数,您可以转到Solr documentation

    【讨论】:

    • mhmm,第一部分查询(主题:zielone AND 主题:aaaaa),从未找到任何文档,所以我不想在任何返回的字段中突出显示这些单词。我只想要这些被击中的词(主题:czerwone)。我测试了 requireFieldMatch 和 hl.usePhraseHighlighter 他们没有给出这种效果
    【解决方案2】:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-05-18
      • 2011-09-20
      • 2016-04-26
      • 1970-01-01
      • 2015-03-07
      • 2023-03-13
      • 1970-01-01
      相关资源
      最近更新 更多