我在进行SOLR搜索时遇到问题。与此处遇到的问题相反:SOLR - wildcard search with capital letter,我在进行非大写字母搜索时遇到问题。
在SOLR中,我有一个名为Title的字段,我的两个文档都有这个字段的值“One piece”和“One punch man”。在进行查询& q = Title: One 时,我能够返回两个文件;但是,当查询& q =标题:一个时,它无法返回任何文件。如果我在没有指定字段名称的情况下进行查询& q = One和& q = 1,那么SOLR能够将这两个文档都返回给我。
以下是我认为相关的托管架构配置:
<fieldType name="text_general" class="solr.TextField" positionIncrementGap="100" multiValued="true">
<analyzer type="index">
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" />
<!-- in this example, we will only use synonyms at query time
<filter class="solr.SynonymFilterFactory" synonyms="index_synonyms.txt" ignoreCase="true" expand="false"/>
-->
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.LowerCaseTokenizerFactory"/>
<filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
</analyzer>
<analyzer type="query">
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" />
<filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.LowerCaseTokenizerFactory"/>
<filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
</analyzer>
我目前正在使用solr 6.4.1,谢谢你的帮助!
答案 0 :(得分:0)
哦,我设法在http://lucene.472066.n3.nabble.com/Uppercase-and-lowercase-queries-td1731349.html找到了解决方案,我在字段Title中添加了一个过滤器,将所有内容更改为小写以进行索引和查询。