您可以使用PHP函数用strtolower()转换您的查询字符串;
http://php.net/manual/en/function.strtolower.php
或者你可以建立与小写过滤器新的字段类型schema.xml中
https://cwiki.apache.org/confluence/display/solr/Tokenizers#Tokenizers-LowerCaseTokenizer
<fieldType name="newFilter" class="solr.TextField" omitNorms="false" positionIncrementGap="100" multiValued="true">
<analyzer type="index">
<tokenizer class="solr.WhitespaceTokenizerFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
<analyzer type="query">
<tokenizer class="solr.WhitespaceTokenizerFactory"/>
<filter class="solr.StopFilterFactory" words="stopwords.txt" ignoreCase="true"/>
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
</fieldType>
例子:
在:“我只是爱我的iPhone!“
出:“我”,“公正”,“爱”,“我的”,“iphone”
我同意你的@Oyeme但我问我这里有没有到Solr的数据转换方法从日光浴室到小写/大写? – Junaid
@Junaid,没有办法做到这一点,最简单的方法是使用strtolower(); 。或者你可以在schema.xml中创建两个不同的字段,一个是小写字母,一个是大写字母。 – Oyeme