solr如何配置同时支持中文和英文的分词器?
我使用solr配置了三个字段,其中一个字段的类型为textgeneral,此类型可以对中文进行分词,但是不对英文分词,那么如何配置一个类型,使其既支持中文分词又支持英文分词? textgeneral字段类型的定义如下
<fieldType name="text_general" class="solr.TextField" positionIncrementGap="100">
<analyzer type="index">
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" />
<!-- in this example, we will only use synonyms at query time
<filter class="solr.SynonymFilterFactory" synonyms="index_synonyms.txt" ignoreCase="true" expand="false"/>
-->
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
<analyzer type="query">
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" />
<filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
</fieldType>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
英文:https://cwiki.apache.org/confluence/display/solr/Filter+Descriptions#FilterDescriptions-NGramFilter
至于中文,默认就是字字分开,直接控制匹配度就行,要词分的话就用ik,但是TokenizerFactory要自己实现,不过写一下还是很方便的
欢迎是JcSeg分词算法,我已实现中文和英文混合分词;github地址 https://github.com/Lawrence-zxc/com.zb.jcseg