jot*_*iez 4 java lucene customization analyzer
我想构建我自己的分析器,它使用两个过滤器/标记器.
我的意思是,相同的字段是关键字(整个流作为单个标记)和小写
如果KeywordAnalyzer仅使用,则field的值保持不区分大小写.如果我使用LowerCaseTokenizer或LowerCaseFilter,我必须将它们与其他分析器结合使用,这些分析器执行相同的操作KeywordAnalyzer(由无字母,空格,删除停用词等分隔)
问题是:有没有办法将该字段作为关键字(整个流作为单个标记)和使用过滤器或分析器Lucene或标记化器的小写?
(谷歌翻译,抱歉错误)
这应该工作:
public final class YourAnalyzer extends ReusableAnalyzerBase {
@Override
protected TokenStreamComponents createComponents(final String fieldName, final Reader reader) {
final TokenStream source = new KeywordTokenizer(reader);
return new TokenStreamComponents(source, new LowercaseFilter(Version.LUCENE_36, source));
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4918 次 |
| 最近记录: |