1.5.4 什么是Filter--过滤器

本文介绍了Lucene中的过滤器(filter)概念及其工作原理。过滤器消耗输入并产生token流,通常用于简化或修改由分词器产生的token。文章还通过Solr配置示例展示了如何使用多种过滤器进行文本分析。

什么是Filter--过滤器

  像分词器(tokenizer)一样,过滤器(filter)消耗输入,产生token流.过滤器同样从org.apache.lucene.analysis.TokenStream中产生.和tokenizer不同的是,filter的输入是一个Tokenizer.filter的工作一般都比tokenizer简单,因为在大多数情况下,filters查看每一个stream中token的顺序,并决定是否传递,替换,或者废弃它.

  filter还可以提前做出更复杂的分析,一次考虑多个token.虽然这是不常见的.一个假设的对于这种filter的使用就是规范化名字的状态,需要分成2个单词. 例如,这单独的token "california" 可以使用"CA"来替换,然而token "rhode" 以及接着的"island" 可能会变成"RI".

  因为filters消耗了一个TokenStream,生成了一个TokenStream.

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

 

  例子中,solr的标准分词器将字段的文本内容分解成tokens.这些tokens然后传递给solr的过滤器,这些顾虑起删除首字母的缩略词,执行一些普通的操作,所有的token都设置为小写,因为查询时不区分大小写的.

 

转载于:https://www.cnblogs.com/a198720/p/4302557.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值