【发布时间】:2012-05-15 20:40:54
【问题描述】:
我将 SnowballPorterFilterFactory 用于索引和查询分析器。 当我搜索“专业”这个词时。 Solr 成功只找到包含“专业”的文章,但我想要“专业”“专业”...
这是 schema.xml
上的当前配置<fieldType name="text" class="solr.TextField" positionIncrementGap="100">
<analyzer type="index">
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="1" catenateNumbers="1" catenateAll="1" splitOnCaseChange="1"/>
<filter class="solr.ASCIIFoldingFilterFactory" />
<filter class="solr.SnowballPorterFilterFactory" language="French"/>
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt"/>
</analyzer>
<analyzer type="query">
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.WordDelimiterFilterFactory" generateWordParts="0" generateNumberParts="0" catenateWords="0" catenateNumbers="0" catenateAll="0" splitOnCaseChange="0"/>
<filter class="solr.ASCIIFoldingFilterFactory" />
<filter class="solr.SnowballPorterFilterFactory" language="French"/>
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt"/>
</analyzer>
</fieldType>
【问题讨论】:
-
我建议转到 Solr 管理面板,单击
Analysis并对此类型进行现场分析。同时执行查询和索引,看看它们是否以相同的方式被提取。 -
同时查看 Solr 日志,看看 Porter 过滤器工厂是否被正确加载,尤其是使用额外的语言标签或者它是否抛出了某种警告。
标签: search solr snowball snowballanalyzer