小编Tom*_*_LK的帖子

Solr - 突出显示查询短语

是否可以突出显示整个查询字词?当我要求"美国"时我想得到:

<em>United States</em>
Run Code Online (Sandbox Code Playgroud)

并不是:

<em>United</em> <em>States</em>
Run Code Online (Sandbox Code Playgroud)

我在整个互联网上搜索了一个答案,使用了hl.mergeContiguous,hl.usePhrasesHighlighterhl.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
Run Code Online (Sandbox Code Playgroud)

答案是:

...
<arr name="post_text"><str>Tag: <em>janusz</em> <em>palikot</em> - Sowiniec: "Sowiniec"</str></arr>
...
Run Code Online (Sandbox Code Playgroud)

我的"post_text"字段是:

<field name="post_text" type="text" indexed="true" stored="true" termVectors="true" termPositions="true" termOffsets="true" required="true" />
Run Code Online (Sandbox Code Playgroud)

我的"文字"类型是:

<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> …
Run Code Online (Sandbox Code Playgroud)

lucene solr solrj solandra

5
推荐指数
1
解决办法
2236
查看次数

标签 统计

lucene ×1

solandra ×1

solr ×1

solrj ×1