Solr 按顶部指定的搜索词提升结果

Solr 按顶部指定的搜索词提升结果,solr,Solr,我将ApacheSolr3.1与drupal一起使用 如何在搜索字段中指定的顶部提升结果 例如,在搜索字段中,如果用户输入continue,solr将在顶部显示具有连续性的文档,在下面显示具有continue的文档,我希望显示具有continue的文档,而不是continuence ^10.0似乎在过滤器链中有词干分析器,由于它的连续性和连续性,映射到同一根,将被同等对待 您需要检查正在使用的词干分析器,并根据需要获取一个词干分析器。默认的porter词干分析器非常具有攻击性,您可能需要一个不太

我将ApacheSolr3.1与drupal一起使用

如何在搜索字段中指定的顶部提升结果

例如,在搜索字段中,如果用户输入continue,solr将在顶部显示具有连续性的文档,在下面显示具有continue的文档,我希望显示具有continue的文档,而不是continuence


^10.0

似乎在过滤器链中有词干分析器,由于它的连续性和连续性,映射到同一根,将被同等对待

您需要检查正在使用的词干分析器,并根据需要获取一个词干分析器。默认的porter词干分析器非常具有攻击性,您可能需要一个不太具有攻击性的选项

Solr目前不会将精确匹配提升到比生成相同根的其他术语更高的水平。
一种选择是在模式中有两个字段。
词干化(title_词干化)和非词干化版本(title-不带词干化过滤器)

示例-

schema.xml-

<!-- Without Porter Stemmer -->
<fieldType name="text_non_stemmed" class="solr.TextField" positionIncrementGap="100" autoGeneratePhraseQueries="true">
    <analyzer type="index">
        <tokenizer class="solr.WhitespaceTokenizerFactory
        <filter class="solr.LowerCaseFilterFactory"/>
    </analyzer>
    <analyzer type="query">
        <tokenizer class="solr.WhitespaceTokenizerFactory"/>
        <filter class="solr.LowerCaseFilterFactory"/>
    </analyzer>
</fieldType>

<!-- With Porter Stemmer -->
<fieldType name="text" class="solr.TextField" positionIncrementGap="100" autoGeneratePhraseQueries="true">
    <analyzer type="index">
        <tokenizer class="solr.WhitespaceTokenizerFactory
        <filter class="solr.LowerCaseFilterFactory"/>
        <filter class="solr.PorterStemFilterFactory"/>
    </analyzer>
    <analyzer type="query">
        <tokenizer class="solr.WhitespaceTokenizerFactory"/>
        <filter class="solr.LowerCaseFilterFactory"/>
        <filter class="solr.PorterStemFilterFactory"/>
    </analyzer>
</fieldType>

<field name="title" type="text" indexed="true" stored="true" termVectors="false" omitNorms="false"/>    
<field name="title_non_stemmed" type="text_non_stemmed" indexed="true" stored="true" termVectors="false" omitNorms="false"/>

<copyField source="title" dest="title_non_stemmed"/>

谢谢帕蒂尔,我刚刚添加了,但它给了我相同的鲁尔特plz帮助。您的字段类型似乎是相同的“文本”。已使用示例编辑了答案。此外,您可能需要重建solr的索引^2%20title ^1我不确定是否收到您的评论。用完整的配置修改了答案。
<requestHandler name="search" class="solr.SearchHandler" default="true">
 <lst name="defaults">
   <str name="echoParams">explicit</str>
   <str name="defType">dismax</str>
   <str name="qf">
      title_non_stemmed^1 title^0.8
   </str>
   <str name="q.alt">*:*</str>
   <str name="rows">10</str>
   <str name="fl">*,score</str>
 </lst>
</requestHandler>
http://localhost:8983/solr/select/?q=continuing