各位好,我在项目中使用Solr3.6+IK2012实现中文分词搜索,在schema.xml配置的信息如下:
<!-- 中文分词器 -->
<fieldType name="text_zh" class="solr.TextField" positionIncrementGap="100" autoGeneratePhraseQueries="true">
<analyzer type="index">
<charFilter class="solr.HTMLStripCharFilterFactory"/>
<tokenizer class="org.wltea.analyzer.solr.IKTokenizerFactory" isMaxWordLength="false"/>
</analyzer>
<analyzer type="query">
<charFilter class="solr.HTMLStripCharFilterFactory"/>
<tokenizer class="org.wltea.analyzer.solr.IKTokenizerFactory" isMaxWordLength="false"/>
</analyzer>
</fieldType>
<field name="title" type="text_zh" indexed="true" stored="true" omitNorms="false"/>
最后向索引中添加一条标题为【中国首支茶文化产业发展基金在京成立】的记录,添加成功后,使用如下的URL查询:
http://10.200.4.245:5100/news/select?q=title:茶文化,结果查询到不任何结果,应该搜索到此条记录才正确,但是通过Solr管理界面进行分词后,再搜索【茶文化】显示是能够命中的,最后再使用下面的URL搜索就能够搜索到:
http://10.200.4.245:5100/news/select?q=title:茶文化产业,这样就能够查询到此条记录,请问各位出现这种情况,可能什么是什么原因呢?期待各位的回复,开启DebugQuery后,返回的parsedquery_toString为title:"茶文化 文化",理论上应该是title:茶文化 title:文化,这种又可能是什么原因呢?谢谢!