我正在安装 solr 6.6。我正在尝试查找具有带有数字的搜索词的文档,例如q=testterm 2
我尝试运行搜索的字段具有以下定义:
<field name="text" type="text_general" indexed="true" stored="false" multiValued="true"/>
数据类型 text_general 的定义是:
<fieldType name="text_general" class="solr.TextField" positionIncrementGap="100">
<analyzer type="index">
<charFilter class="solr.PatternReplaceCharFilterFactory" pattern="([^A-Za-z0-9 ])" replacement=""/>
<tokenizer class="solr.KeywordTokenizerFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" preserveOriginal="1"/>
<filter class="solr.EdgeNGramFilterFactory" minGramSize="2" maxGramSize="50"/>
<filter class="solr.ReverseStringFilterFactory"/>
<filter class="solr.EdgeNGramFilterFactory" minGramSize="2" maxGramSize="50"/>
<filter class="solr.ReverseStringFilterFactory"/>
</analyzer>
<analyzer type="query">
<charFilter class="solr.PatternReplaceCharFilterFactory" pattern="([^A-Za-z0-9 ])" replacement=""/>
<tokenizer class="solr.KeywordTokenizerFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" preserveOriginal="1"/>
</analyzer>
</fieldType>
之前定义的字段文本的值是使用 copyfield 填充的。当我使用具有数字的搜索词(如上所述)没有返回文档时,就会出现问题。无论如何配置 solr 以使具有数字的搜索词返回文档(注意:标题等字段已经具有值Testterm 2
,并且使用 copyfield 将其复制到文本中)