zoukankan      html  css  js  c++  java
  • solr英文使用的基本分词器和过滤器配置

    solr英文应用的基本分词器和过滤器配置

    英文应用分词器和过滤器一般配置顺序

      索引(index):

        1:空格 WhitespaceTokenizer
        2:过滤词(停用词,如:on、of、a、an等) StopFilter
        3:拆字WordDelimiterFilter 
        4:小写过滤LowerCaseFilter 
        5:英文相近词EnglishPorterFilter 
        6:去除重复词RemoveDuplicatesTokenFilter

      查询(query):(首先也是加入分词方法)

        1:查询同义词 SynonymFilter
        2:过滤词 StopFilter
        3:拆字 WordDelimiter
        4:小写过滤 LowerCaseFilter
        5:英文相近词 EnglishPorterFilter
        6:去除重复词 RemoveDuplicatesTokenFilter

    示例配置如下:

    <fieldtype name="text" class="solr.TextField" positionIncrementGap="100">
    <analyzer type="index">
    <tokenizer class="solr.WhitespaceTokenizerFactory"/>
    
    <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt"/>
    <filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="1" catenateNumbers="1" catenateAll="0"/>
    <filter class="solr.LowerCaseFilterFactory"/>
    <filter class="solr.EnglishPorterFilterFactory" protected="protwords.txt"/>
    <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
    </analyzer>
    <analyzer type="query">
    <tokenizer class="solr.WhitespaceTokenizerFactory"/>
    <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
    <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt"/>
    <filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="0" catenateNumbers="0" catenateAll="0"/>
    <filter class="solr.LowerCaseFilterFactory"/>
    <filter class="solr.EnglishPorterFilterFactory" protected="protwords.txt"/>
    <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
    </analyzer>
    </fieldtype>
    

     这样配置以后,字段类型为“text”的就会有以上的一些处理,如下,name就会有以上的处理了。

    <field name="name" type="text" indexed="true" stored="true" multiValued="true"/>

     更多的过滤器配置可以参照solr wiki:http://wiki.apache.org/solr/FrontPage

  • 相关阅读:
    js直接获取当前windows登陆账号---仅适用于IE
    Windows变量路径与通配符
    IDEA数据库生成Entity 带注释, 默认值
    BIM+区块链在建筑业施工过程结算的应用
    Java中动态规则的实现方式
    Git查看本地仓库关联关系以及清理无效远程分支
    Golang把字符串数组、[]interface{}打乱、切片乱序
    Golang将map数组按照指定字段排序
    Golang把时间和数字相乘报错invalid operation: second * time.Second (mismatched types int and time.Duration)
    Golang获取明日时间及距离明日凌晨的时间差
  • 原文地址:https://www.cnblogs.com/a198720/p/3568850.html
Copyright © 2011-2022 走看看