【问题标题】:Highlight whole query phrase突出显示整个查询短语
【发布时间】:2011-07-06 15:15:28
【问题描述】:

我正在使用 solr 进行搜索,并为我的搜索结果实现了突出显示功能。 当我的搜索字符串为ring 时,它突出显示ring,但当搜索字符串为"gold ring" 时,它也仅突出显示gold,我想突出显示整个gold ring 为了突出显示,我使用我得到的描述字段

highlighting ={
        "8252": {
            "text": [
                " and <em>gold</em><em>Ring</em>  design was finely crafted in Japan."
            ]
        },
        "8142": {
            "text": [
                "This <em>elegant</em> <em>Ring</em>  has an Akoya cultured pearl with a band of bezel-set round diamonds making"
            ]
        }
    };

现在我将其解析为

$.each(newresult.response.docs, function(i,item){
   var word = highlight[item["UID_PK"]];
   var result="";
   var j=0;
   for (j=0 ;j<=item.text.length;j++)
   {
    result = result+item.text[j]+"<br>";
   }
                                result=result.replace(word,'<em>' + word + '</em>');
});

现在我应该如何解析,以便我得到gold ring 突出显示

【问题讨论】:

    标签: solr highlighting


    【解决方案1】:

    你通过了吗-

    hl.highlightMultiTerm=true 
    

    在查询参数中?该值告诉 solr 突出显示多个术语。此参数的值默认设置为false。因此,您需要通过使用查询参数将其设为true

    更多参考请访问Solr Documentation

    【讨论】:

    • 正如我在 json 中看到的那样,我得到了 gold戒指 设计是在日本精心制作的。”,将 放在两个戒指上和黄金。我只需要解析它,以便我可以同时突出显示
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-12
    • 1970-01-01
    • 1970-01-01
    • 2021-10-11
    相关资源
    最近更新 更多