如何搜索单词后缀?我正在使用 Solr-4.5.1。使用 Solr-3.6.2 我在 schema.xml 中已经注意到: filter class="solr.EdgeNGramFilterFactory" minGramSize="2" maxGramSize="50" side="back" 在 solr-4.5.1 中不起作用。谢谢。
问问题
1277 次
2 回答
5
I think you have to use the ReverseStringFilterFactory
like this
<fieldType name="text" class="solr.TextField" omitNorms="false">
<analyzer type="index">
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.StandardFilterFactory"/>
<filter class="solr.WordDelimiterFilterFactory" catenateWords="1" catenateAll="1" preserveOriginal="1"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.EdgeNGramFilterFactory" minGramSize="2" maxGramSize="15"/>
<filter class="solr.ReverseStringFilterFactory" />
<filter class="solr.EdgeNGramFilterFactory" minGramSize="2" maxGramSize="15"/>
<filter class="solr.ReverseStringFilterFactory" />
</analyzer>
...
于 2013-12-09T12:14:13.103 回答
1
这个答案不正确,fieldType 管道只有一个结果,而不是这里暗示的两个结果。您需要将源字段复制到第二个“向后”字段并对其进行搜索。
于 2014-04-14T19:53:47.440 回答