cómo agregar palabras de parada personalizadas usando lucene en java
Estoy utilizando lucene para eliminar palabras de detención en inglés, pero mi requisito es eliminar palabras de detención en inglés y palabras de detención personalizadas. A continuación se muestra mi código para eliminar las palabras vacías en inglés usando lucene.
Mi código de muestra:
public class Stopwords_remove {
public String removeStopWords(String string) throws IOException
{
StandardAnalyzer ana = new StandardAnalyzer(Version.LUCENE_30);
TokenStream tokenStream = new StandardTokenizer(Version.LUCENE_36,newStringReader(string));
StringBuilder sb = new StringBuilder();
tokenStream = new StopFilter(Version.LUCENE_36, tokenStream, ana.STOP_WORDS_SET);
CharTermAttribute token = tokenStream.getAttribute(CharTermAttribute.class);
while (tokenStream.incrementToken())
{
if (sb.length() > 0)
{
sb.append(" ");
}
sb.append(token.toString());
}
return sb.toString();
}
public static void main(String args[]) throws IOException
{
String text = "this is a java project written by james.";
Stopwords_remove stopwords = new Stopwords_remove();
stopwords.removeStopWords(text);
}
}
salida:java project written james.
salida requerida:java project james.
¿Cómo puedo hacer esto?