0
当谈到solr时,我是一个完整的noob,这是我的第一个配置,我遇到了需要正确过滤solr数据的问题。我们正在使用solr 4.0,09-21-2011快照。我想要的是将各个字段中每个单词的首字母大写。我们索引的数据将包含'name'='STAR WARS'等数据。我要的是,当我查询到的数据,这个名字应该回来的“星球大战”,但回来为“星球大战”Solr CapitalizationFilterFactory不工作
这里是我的设置
<fieldType name="text_capital" class="solr.TextField" positionIncrementGap="100">
<analyzer type="index">
<tokenizer class="solr.WhitespaceTokenizerFactory"/>
<filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="1" catenateNumbers="1" catenateAll="0" splitOnCaseChange="1"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.CapitalizationFilterFactory" onlyFirstWord="false" okPrefix="CVS"/>
<filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
</analyzer>
<analyzer type="query">
<tokenizer class="solr.WhitespaceTokenizerFactory"/>
<filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="0" catenateNumbers="0" catenateAll="0" splitOnCaseChange="1"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.CapitalizationFilterFactory" onlyFirstWord="false" okPrefix="CVS"/>
<filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
</analyzer>
</fieldType>
这里是字段映射
<field name="name" type="text_capital" indexed="true" stored="true" />
现在,当我看分析器一切看起来罚款,查询和索引它击中标记者和所有过滤器正常,但是当我运行一个查询结果回来与名全部大写。我觉得我在这里失去了一些明显的东西。
感谢,
-zach
感谢Mauricio,这是有道理的,但是这个设置应该以我想要的格式索引数据。对? – zlegein
@zlegein:索引,是的,但存储的值是分开的。 –