我需要在Lucene中实现自定义分析器的帮助。由于某些原因,我需要使用此版本的Lucene,而不能使用最新的版本。 我需要一个使用小写过滤器和stopfilter的意大利语和英语停用词的分析器。
我尝试使用Web上的其他方法,例如StopFilterFactory,但是在实现方面有些困难
这是我需要做的(在最新版本的Lucene中)
public class MyAnalyzer extends Analyzer {
Version matchVersion = Version.LATEST;
@Override
protected TokenStreamComponents createComponents(String fieldName) {
ArrayList stops = new ArrayList(EnglishAnalyzer.getDefaultStopSet());
ArrayList itaStops = new ArrayList(ItalianAnalyzer.getDefaultStopSet());
stops.addAll(itaStops);
CharArraySet sw = StopFilter.makeStopSet(stops);
Tokenizer source = new StandardTokenizer();
TokenStream filter = new LowerCaseFilter(source);
filter = new StopFilter(filter, sw);
filter = new PorterStemFilter(filter);
return new TokenStreamComponents(source, filter);
}
}
我需要一些有关在Lucene 5.0中实现同一分析器的提示
我得到的错误与CharArraySet,StopFilter,LowerCaseFilter和PorterStemFilter有关。这些类未在我需要的lucene版本中实现。 谢谢