9

我对 SOLR 搜索有疑问。当我搜索查询时:dog* 一切正常,但是当查询是 Dog*(第一个大写字母)时,我没有得到任何结果。有什么建议吗?我的配置:

<fieldType name="text" class="solr.TextField" positionIncrementGap="100">
  <analyzer type="index">
    <tokenizer class="solr.WhitespaceTokenizerFactory"/>
    <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt"/>
    <filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="1" catenateNumbers="1" catenateAll="0" splitOnCaseChange="0"/>
    <filter class="solr.LowerCaseFilterFactory"/>
    <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
  </analyzer>
  <analyzer type="query">
    <tokenizer class="solr.WhitespaceTokenizerFactory"/>
    <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
    <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt"/>
    <filter class="solr.WordDelimiterFilterFactory"  generateWordParts="1" generateNumberParts="1" catenateWords="0" catenateNumbers="0" catenateAll="0" splitOnCaseChange="0"/>
    <filter class="solr.LowerCaseFilterFactory"/>
    <filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
  </analyzer>
</fieldType>
4

2 回答 2

10

在另一个资源上收到答案。问题是:http ://wiki.apache.org/solr/AnalyzersTokenizersTokenFilters “在通配符和模糊搜索中,不对搜索词进行文本分析。”

希望,这会帮助某人。

于 2009-12-04T06:12:42.570 回答
0

您是否尝试过使用 EdgeNgrams?请参阅我对问题2413946的回答。

于 2010-06-09T18:29:55.750 回答