尝试编写词干分析器来存储词干和原始词时,使用FastVectorHighlighter
导致短语突出显示会出现一些问题。
输入字符串为foo bar baz
,ba
为bar
的词干。下图说明了分析
短语搜索会产生匹配但根本没有突出显示
http://localhost:8080/solr/select
?q="foo bar baz"
&qf=text
&hl.requireFieldMatch=true
&hl.fl=text
&hl.usePhraseHighlighter=true
&hl.boundaryScanner=breakIterator
&hl.useFastVectorHighlighter=true
&hl=true
&defType=edismax
hl.bs.type=WORD
使用boundayScanner
的位置。
来自查询的两种方法hl.useFastVectorHighlighter=false
和引号都会突出显示所有字词。
Solr 3.6.2
,该字段定义如下
<field name="text" type="text" indexed="true" stored="true"
multiValued="true" termVectors="true"
termPositions="true" termOffsets="true"/>
并分析为
<fieldType name="text" class="solr.TextField" positionIncrementGap="100">
<analyzer>
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="my.custom.StemmerFactory" preserveOriginal="true"/>
</analyzer>
</fieldType>
答案 0 :(得分:3)
原来hl.fragSize
没有设置足够大的值来包含整个突出显示的序列。愚蠢的问题通常是最糟糕的。