2015-08-15 202 views
0

我试图建立一个不区分大小写的搜索一堆XML文档。是否有可以使用的内置字段类型?使用的Solr 5.2.1 IM,我尝试了所有堆栈溢出应答Solr不区分大小写搜索

SOLR Case Insensitive Search how to make field search not case-sensitive in solr using solrnet

我加入schema.xml中一个自定义的字段,其是内部 的solr-5.2.1 \示例\例如-DIH \ solr的\ solr \ schema.xml

此字段是否应出现在Web UI的模式浏览器中?我也没有得到它。 这是日提交的类型:

<fieldType name="string_ci" class="solr.TextField" 
     sortMissingLast="true" omitNorms="true"> 
     <analyzer> 
      <tokenizer class="solr.KeywordTokenizerFactory"/>   
      <filter class="solr.LowerCaseFilterFactory" /> 
     </analyzer> 
    </fieldType> 

这是我的xml:

<doc> 
<field name="id"> 
70 
change.me</field> 
<field name="title1" type="string_ci"> 
Hatton Matale 
</field> 
<field name="title2" type="text_general"> 
Kotagala Kandy 
</field> 
</doc> 

这是我的查询:

title2:*kandy* 

http://localhost:8983/solr/CaseTest/select?=title2%3A康提 &重量= JSON &缩进=真

+0

而你没有得到结果? –

+0

你为什么使用关键字记号器? –

+0

如果您无法在浏览器中看到fieldType,那意味着您没有将它添加到正确的位置。你正在使用哪个基本配置集? –

回答

0

您可以使用下面的fieldType。它将通过空格将文本流分解为标记,并在编制索引之前将其转换为小写。

<fieldType name="text_general" class="solr.TextField" positionIncrementGap="100"> 
    <analyzer> 
    <tokenizer class="solr.StandardTokenizerFactory"/> 
    <filter class="solr.LowerCaseFilterFactory"/> 
    </analyzer> 
</fieldType>