lucene standardanalyzer是否删除停用词并具有词干功能?

提问

我已经使用indexWriter测试了standardanalyzer,发现它会自动删除停用词,但是,我没有添加停用词列表,因为以下代码是我使用的代码

StandardAnalyzer analyzer = new StandardAnalyzer(Version.LUCENE_35); 
        IndexWriterConfig config =new IndexWriterConfig(Version.LUCENE_35, analyzer);

默认停用词列表在哪里?
另外,此分析仪是否也会自动阻止单词??

最佳答案

根据API docs,存在一组默认的停用词(取自英语),存储在StandardAnalyzer.STOP_WORDS_SET中.如果您使用构造函数public StandardAnalyzer(Version matchVersion)创建分析器,则将使用此方法,这正是您的工作.该集合与StopAnalyzer.ENGLISH_STOP_WORDS_SET完全相同.您可以使用其他构造函数之一来向分析器传递另一组(可能为空)停用词.

StandardAnalyzer不会说话.如果需要阻止,请使用例如SnowballAnalyzer.