2016-01-24 34 views
0

我使用JWNL來檢查單詞並返回單詞的詞幹(exp:知道 - >知道)。它工作正常,但我如何保留一個詞(exp:知道 - >知道)中包含的句點(點),因爲它每次都會刪除一個詞,並且每個詞都帶有一個點。Java:使用Wordnet和JWNL保留字詞後使用

String x = stem.StemWordWithWordNet ("knew."); 
System.out.println(x); 

爲制止字的代碼是在這裏:http://tipsandtricks.runicsoft.com/Other/JavaStemmer.html 還是有辦法,如果它檢測到一個時期,我可以有一個週期劃分爲朵朵字? 任何人都熟悉這?謝謝

+0

我不熟悉JWNL,但你爲什麼不只是reappend了'.',如果它是存在於輸入? – qqilihq

回答

1

單詞stemmer只適用於單詞,所以要包括諸如句號&的句子,您需要在外部完成這些操作。

一個簡單的方法就是定義自己的支持這些細節的詞幹方法,當它在整個項目中被重複使用時,它會得到回報。

String stemWord(Stemmer s, String word) throws Exception 
{ 
    return s.StemWordWithWordNet(word) 
    + (word.charAt(word.length()-1)=='.'?".":""); 
} 

然後使用它像這樣

String x = stemWord(stem,"knew."); 
System.out.println(x); 

String x = stemWord(stem,"knew"); 
System.out.println(x); 
相關問題