如何在Lucene 5.5中实现自定义分析器?

时间:2019-10-26 17:46:40

标签: java lucene analyzer

我需要在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版本中实现。 谢谢

0 个答案:

没有答案