【发布时间】:2011-07-20 11:53:12
【问题描述】:
我正在一个 Java 应用程序中处理一些英文文本,我需要对它们进行词干处理。 例如,从文本“amenities/amenity”我需要得到“amenit”。
函数如下:
String stemTerm(String term){
...
}
我找到了 Lucene Analyzer,但它看起来太复杂了,无法满足我的需求。 http://lucene.apache.org/java/2_2_0/api/org/apache/lucene/analysis/PorterStemFilter.html
有没有办法在不构建分析器的情况下使用它来词干?我不了解所有 Analyzer 业务...
编辑:我实际上需要词干提取+词形还原。 Lucene 可以做到这一点吗?
【问题讨论】:
-
为什么你需要自己阻止这些词? Lucene 有一个名为 SnowballAnalyzer 的分析器,您只需使用词干分析器名称对其进行实例化,例如
new SnowballAnalyzer("English");. -
Knuth-Pratt 算法实现fmi.uni-sofia.bg/fmi/logic/vboutchkova/sources/…
标签: java lucene stemming porter-stemmer