gpt4 book ai didi

elasticsearch - 在Solr 5.3.1中替换ApostropheFilterFactory

转载 作者:行者123 更新时间:2023-12-02 22:38:07 25 4
gpt4 key购买 nike

在索引之前,我需要删除单词中的撇号。例如,我想让单例汉成为单例汉。我为此使用了solr.ApostropheFilterFactory,但是我认为,此过滤器在solr4之后被弃用,而我正在使用solr5。
这就是我的用法

<analyzer>
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.ApostropheFilterFactory"/>
</analyzer>

我也用过StandardFilterFactory
<fieldType name="text" class="solr.TextField">
  <analyzer type="index">
    <tokenizer class="solr.StandardTokenizerFactory"/>
    <filter class="solr.StandardFilterFactory"/>
  </analyzer>
</fieldType>

这些都不对我有用。任何人都可以建议我什么。提前致谢!

最佳答案

使用单词定界符过滤器

该过滤器在单词定界符处分割标记。
确定定界符的规则如下:

<fieldType name="text" class="solr.TextField">
<analyzer>
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.WordDelimiterFilterFactory"/>
</analyzer>
</fieldType>
  • 单词中的大小写更改:“CamelCase”->“Camel”,“Case”。可以通过设置splitOnCaseChange =“0”来禁用它。
  • 从字母到数字字符的转换,反之亦然:“Gonzo5000”->“Gonzo”,“5000”“4500XL”->“4500”,“XL”。可以通过设置splitOnNumerics =“0”来禁用它。
  • 非字母数字字符(丢弃):“热点”->“热点”,“点”
  • 删除结尾的“'s”:“O'Reilly's”->“O”,“Reilly”
    任何前导或结尾定界符都将被丢弃:“--hot-spot--”->“hot”,“spot”

  • 要么

    经典过滤器

    This filter takes the output of the Classic Tokenizer and strips periods from acronyms and "'s" from possessives.


    <fieldType name="text" class="solr.TextField">
    <analyzer>
    <tokenizer class="solr.StandardTokenizerFactory"/>
    <filter class="solr.ClassicFilterFactory"/>
    </analyzer>
    </fieldType>

    注意:如果您在分析器标签中提供type =“index”,则分析器用于索引时间

    关于elasticsearch - 在Solr 5.3.1中替换ApostropheFilterFactory,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43093649/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com