How to use the Porter Stemmber class in Lucene 3.6.2? Here is what I have:
import org.apache.lucene.analysis.PorterStemmer;
...
PorterStemmer stemmer = new
In Lucene later version, PorterStemmer no longer public. So
class MyAnalyzer extends Analyzer {
public final TokenStream tokenStream(String fieldName, Reader reader) {
return new PorterStemFilter(new LowerCaseTokenizer(reader));
}
}
Or you can use SnowballAnalyzer Stemmer.link (SnowballAnalyzer is deprecated)
import org.tartarus.snowball.ext.PorterStemmer;
.
.
public static String applyPorterStemmer(String input) throws IOException {
PorterStemmer stemmer = new PorterStemmer();
stemmer.setCurrent(input);
stemmer.stem();
return stemmer.getCurrent();
}