Edge_ngram字段

时间:2015-12-07 14:24:29

标签: solr

我正在处理的应用程序的SOLR索引中的字段定义如下:

 <field name="text" type="edge_ngram" indexed="true" stored="true" multiValued="false" />                                                                     

......以及schema.xml中的其他地方:

 <fieldType name="edge_ngram" class="solr.TextField" positionIncrementGap="1">                                                                                
     <analyzer type="index"> 
        <tokenizer class="solr.NGramTokenizerFactory" minGramSize="3" maxGramSize="15" />  
        ...

这适用于用户希望进行的大多数搜索,例如它出现了'二重奏'&#39;如果他们搜索了两个单词&#39;,依此类推。

但是,有些用户还希望搜索确切的字符串。例如,只有一条记录包含&#39;这个确切的字符串&#39;在文本字段中的许多其他单词中。如果用户使用引号搜索该字符串,即&#34;这个确切的字符串&#34;,搜索将不会显示任何内容:

http://localhost:8983/solr/collection1/select?q=%22this%20exact%20string%22

省略引号,他们会得到大量的点击,例如任何带有&#39; string&#39;在里面。

因此,据推测,我对田间类型的选择并不是最好的。任何人都可以建议解决这个问题吗?

0 个答案:

没有答案