2015-01-08 55 views
0

所有:如何突出单段所有匹配的词Solr中

现在,我使用SOLR亮点功能,但有一点我要问的是:

假设我要搜索的关键字基金和值:

fund AND value 

而且回亮点的部分是这样的:

"highlighting": { 
    "blk_0019": { 
     "content": [ 
     "philosophy of the <em>fund</em> – <em>value</em> and turning point. \n \n MUSA was an orphaned" 
     ] 
    }, 
    "blk_0006": { 
     "content": [ 
     "Global Equities <em>Fund</em> Ltd. \n \n CONFIDENTIAL enclosed" 
     ] 
    } 
} 

的问题是我当然blk_0019和blk_0006同时具有资金和价值(显然我使用基金和报告),因为我设置hl.fragsize = 100,如果资金和价值在一个文件中位置不够近,他们不能同时显示在同一个片段中。在blk_0019中,solr突出了基金和价值,但在blk_0006中,只显示了基金。

我怎样才能显示一个片段都匹配的,只是它们之间忽略文本.....像谷歌

也有一些小的问题是:

[1]如何指定在Solr中搜索大写的单词如Hello HELLO ?

[2]如何搜索全资AND(全部大写“AND”将被认为是逻辑运算符)

感谢

回答

1

这取决于你所使用的荧光笔。对于标准荧光笔,例如您可以设置hl.snippets=5(默认值为1)。然后你会得到5片段(最多),每个片段的最大长度为hl.fragsize

它们作为多个值返回,因此您需要自己加入它们(例如,使用“...”)。

+0

感谢您的帮助。有一个问题我想知道:如何安排突出显示结果的优先级?假设我想搜索:+ Fund OR(value USA),看起来+ Fund是一个非常重要的关键字,我明确想要在高亮结果中显示它的匹配,但是如果文档中的匹配位置超出hl.snippets,它可能未在结果中显示,我如何配置以确保基金匹配结果始终可以在结果中显示? – Kuan

+0

好问题。也许你应该看看https://cwiki.apache.org/confluence/display/solr/Postings+Highlighter。它通过对“段落”进行评分来进行良好的总结(因为在这种情况下称为分段)。但要注意,它的工作原理完全不同。 – Simon

+0

谢谢,我研究这个。你能帮我解决关于solr查询语法的另一个问题吗? http://stackoverflow.com/questions/27865771/beginner-about-solr-boolean-operation-like-combination-of-and-or或 – Kuan

相关问题