是否可以突出顯示整個查詢條件? F.E.當我問「美國」我想:Solr - 高亮查詢短語
<em>United States</em>
,而不是:
<em>United</em> <em>States</em>
我搜索整個互聯網的答案,使用HL的所有組合。 mergeContiguous,hl.usePhrasesHighlighter和hl.highlightMultiTerm參數仍然無法使其工作。
我的查詢是:
http://localhost:8983/solandra/idxPosts.proj350_139/select?q=post_text:"Janusz Palikot"&hl=true&hl.fl=post_text&hl.mergeContiguous=true&hl.usePhrasesHighlighter=true&hl.highlightMultiTerm=true
的答案是:
...
<arr name="post_text"><str>Tag: <em>janusz</em> <em>palikot</em> - Sowiniec: "Sowiniec"</str></arr>
...
我 「POST_TEXT」 字段是:
<field name="post_text" type="text" indexed="true" stored="true" termVectors="true" termPositions="true" termOffsets="true" required="true" />
我的 「文本」 的類型是:
<fieldType name="text" class="solr.TextField">
<analyzer type="index">
<tokenizer class="solr.StandardTokenizerFactory" />
<filter class="solr.TrimFilterFactory" />
<filter class="solr.LowerCaseFilterFactory" />
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords_pl.txt" />
<filter class="solr.ReversedWildcardFilterFactory" />
</analyzer>
<analyzer type="query">
<tokenizer class="solr.StandardTokenizerFactory" />
<filter class="solr.TrimFilterFactory" />
<filter class="solr.LowerCaseFilterFactory" />
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords_pl.txt" />
</analyzer>
</fieldType>
我還試圖用FastVectorHighlighter與hl.useFastVectorHighlighter =真,但遇到了一個錯誤:
Problem accessing /solandra/idxPosts.proj350_139/select. Reason:
-6
java.lang.ArrayIndexOutOfBoundsException: -6
at lucandra.TermFreqVector.getOffsets(TermFreqVector.java:224)
at org.apache.lucene.search.vectorhighlight.FieldTermStack.<init>(FieldTermStack.java:100)
at org.apache.lucene.search.vectorhighlight.FastVectorHighlighter.getFieldFragList(FastVectorHighlighter.java:175)
at org.apache.lucene.search.vectorhighlight.FastVectorHighlighter.getBestFragments(FastVectorHighlighter.java:166)
at org.apache.solr.highlight.DefaultSolrHighlighter.doHighlightingByFastVectorHighlighter(DefaultSolrHighlighter.java:509)
at org.apache.solr.highlight.DefaultSolrHighlighter.doHighlighting(DefaultSolrHighlighter.java:376)
at org.apache.solr.handler.component.HighlightComponent.process(HighlightComponent.java:116)
at org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:194)
...
你能幫助我嗎?
您是否曾經找到過在Solr結果中標記整個短語(而且只有那個)的方法? ...我知道這是幾年後,但我仍然無法找到一個工作的答案 – mibm