Lucene的StandardAnalyzer在索引时会从字符串/首字母缩略词中删除点.我希望Lucene保留点数,因此我使用的是WhitespaceAnalyzer类.
我可以将我的停用词列表提供给StandardAnalyzer ......但我如何将它提供给WhitespaceAnalyzer?
谢谢阅读.
通过扩展WhiteSpaceAnalyzer并覆盖tokenStream方法创建您自己的分析器,如下所示.
public TokenStream tokenStream(String fieldName, Reader reader) {
TokenStream result = super.tokenStream(fieldName, reader);
result = new StopFilter(result, stopSet);
return result;
}
Run Code Online (Sandbox Code Playgroud)
这里的stopSet是一组停用词,您可以通过向分析器添加一个构造函数来获得停止词列表.
如果您计划重用TokenStream,您可能还希望以类似的方式覆盖reusableTokenStream()方法.
| 归档时间: |
|
| 查看次数: |
2163 次 |
| 最近记录: |