0

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 上拆分标记。这意味着“深红色”变成“深色”和“红色”,这是错误的。

有没有办法使用模式标记器?

感谢您提供任何帮助!

4

1 回答 1

1

供您参考:构面、模式标记器和停用词将在 lucene / solr 4 中工作 :-)

于 2011-07-18T09:27:03.147 回答