solr中英文分词模糊查询

在Solr中,使用IK Analyzer进行分词后,模糊查询可能会返回大量不精确的结果。为提升用户体验,可以通过调整配置实现更精确的匹配。方法包括在查询时设置defType为edismax并调整mm参数,或者修改solrQueryParser的defaultOperator为AND。通过这些设置,可以确保查询条件中的所有分词都需要出现在结果中。
摘要由CSDN通过智能技术生成

在solr的分词配置后成功后,在solr后台管理界面进行模糊查询的时候会存在分词匹配个数的问题。打个简单的比方:搜索兰州XXXX酒店。 往往这个时候就有一大批数据出来,只要包含了分词后的词的数据都会搜索出来,给客户的体验不怎么好,本来客户是想只展示兰州的XXXX酒店的,结果北京的、广州的,还有其他名称的酒店都给搜索出来。这个时候就是分词的匹配个数设置的问题了。

首先还是看下分词的配置(IK Analyzer的导入这里不作讲解了,网上很多例子);

在schema.xml增加如下配置:

 <fieldType name="text_ik" class="solr.TextField">

        <analyzer type="index" isMaxWordLength="false" class="org.wltea.analyzer.lucene.IKAnalyzer"/>

        <analyzer type="query" isMaxWordLength="true" class="org.wltea.analyzer.lucene.IKAnalyzer"/>

    </fieldType>

  <dynamicField name="*_sa"  type="text_ik"  indexed="true"  stored="true" />

这里自定了一个

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值