在 Solr 中使用 singular/plural 功能处理查询
Handling queries with singular/plural feature in Solr
我正在尝试处理 singular/plural 查询。这是 text_general 类型模式
<fieldType name="text_general" class="solr.TextField" positionIncrementGap="100" multiValued="true">
<analyzer type="index">
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" />
<filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" />
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.PorterStemFilterFactory"/>
</analyzer>
<analyzer type="query">
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" />
<filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" />
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.PorterStemFilterFactory"/>
</analyzer>
</fieldType>
还是"mobile"和"mobiles"的查询结果不一样。
任何帮助将不胜感激。谢谢。
使用 solr.EnglishMinimalStemFilterFactory
作为标记过滤器。
将此过滤器<filter class="solr.EnglishMinimalStemFilterFactory" />
添加到您的分析器类型="query" 并签入分析页面。
"mobiles" 将变为 "mobile"
索引也可以这样做。
希望对您有所帮助
我正在尝试处理 singular/plural 查询。这是 text_general 类型模式
<fieldType name="text_general" class="solr.TextField" positionIncrementGap="100" multiValued="true">
<analyzer type="index">
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" />
<filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" />
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.PorterStemFilterFactory"/>
</analyzer>
<analyzer type="query">
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" />
<filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" />
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.PorterStemFilterFactory"/>
</analyzer>
</fieldType>
还是"mobile"和"mobiles"的查询结果不一样。 任何帮助将不胜感激。谢谢。
使用 solr.EnglishMinimalStemFilterFactory
作为标记过滤器。
将此过滤器<filter class="solr.EnglishMinimalStemFilterFactory" />
添加到您的分析器类型="query" 并签入分析页面。
"mobiles" 将变为 "mobile"
索引也可以这样做。
希望对您有所帮助