【问题标题】:Stemming + stop word filtering in Lucene 4.0+Lucene 4.0+中的词干+停用词过滤
【发布时间】:2013-08-30 00:56:34
【问题描述】:

我曾经使用SnowBallAnalyzer 将自定义停用词过滤与基本词干结合起来,但它已被弃用。例如在索引配置中,我可以很容易地指定:

IndexWriterConfig config = new IndexWriterConfig(Version.LUCENE_32,
                new SnowballAnalyzer(Version.LUCENE_32, "name", stopSet));

stopSet 是我的自定义停用词列表。

我现在如何创建一个分析器来过滤停用词并进行基本的英语词干提取?

谢谢。

【问题讨论】:

    标签: lucene stemming


    【解决方案1】:

    使用EnglishAnalyzer:

    new EnglishAnalyzer(Version.LUCENE_32, stopSet)
    

    如果您没有将有效的词干分析器名称传递给 SnowballAnalyzer 构造函数,我对您列出的代码如何做任何特别有用的事情感到有些困惑。似乎它应该在这里抛出异常:

     Class<?> stemClass = Class.forName("org.tartarus.snowball.ext." + name + "Stemmer");
    

    因为没有词干分析器叫做:“org.tartarus.snowball.ext.nameStemmer”。

    【讨论】:

    • 谢谢。从文档中并不太清楚EnglishAnalyzer 也可以进行词干提取。
    猜你喜欢
    • 1970-01-01
    • 2012-12-18
    • 1970-01-01
    • 1970-01-01
    • 2021-05-02
    • 1970-01-01
    • 2013-06-08
    • 2023-03-09
    • 1970-01-01
    相关资源
    最近更新 更多