solr/lucene 中一个名为 COLORS 的文档字段有一组像这样的词:
字段 1:蓝色/深红色/绿色字段 2:蓝色/黄色/橙色 [...]
我需要对其进行多面搜索以获取所有颜色和每种颜色的计数。首先我尝试了 PatternTokenizerFactory,然后是停用词列表:
<analyzer>
<tokenizer class="solr.PatternTokenizerFactory" pattern="/" />
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.TrimFilterFactory" />
<filter class="solr.StopFilterFactory"
ignoreCase="true"
words="stopwords"
enablePositionIncrements="true"
/>
</analyzer>
不幸的是,停用词列表接缝被忽略。停用词出现在多面搜索结果中。
这个SO question描述了同样的问题。不幸的是,发布的解决方案对我不起作用,因为我不能使用 solr.StandardTokenizerFactory,因为标准标记器也会在 whitspaces 上拆分标记。这意味着“深红色”变成“深色”和“红色”,这是错误的。
有没有办法使用模式标记器?
感谢您提供任何帮助!