[英]Solr dismax highlighting not respecting analyzer
在Solr 3.6.2的模式中,有兩個field
聲明, text
和exact
<field name="text" type="text" indexed="true" stored="true" />
<field name="exact" type="string" indexed="true" stored="true" />
前者使用StandardTokenizer
,后者使用KeywordTokenizer
。
Solr查詢描述問題:
?hl=true
&hl.fl=text,exact
&defType=edismax
&qf=text+exact <-------- here
&q=a-b
高亮顯示字段精確輸出 : <em>a</em>-<em>b</em>
。 問題是使用text
分析儀生成的exact
字段摘要。
?hl=true
&hl.fl=text,exact
&defType=edismax
&qf=exact <-------- here
&q=a-b
高亮顯示字段精確輸出 : <em>ab</em>
。 通過簡單地從qf
刪除text
,我們得到了正確的分析器,為什么?
debugQuery
+DisjunctionMaxQuery(((exact:a-b) | ((text:a text:b)~2)))
找到exact
匹配的Solr熒光筆似乎也僅根據查詢中的存在來匹配a
和b
。 hl.requireFieldMatch=true
確實可以解決這個問題!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.