我正在開發一個JAVA應用程序,用戶在文本框中輸入一個單詞時,該單詞的同義詞必須自動提供給他。在java中查找單詞的同義詞和根
給出一個詞,是否有可能在JAVA中找到它的同義詞和它的根?我應該用字典嗎?
如:
word: killer
synonym: murderer butcher hitman
word: killing
root: kill
我正在開發一個JAVA應用程序,用戶在文本框中輸入一個單詞時,該單詞的同義詞必須自動提供給他。在java中查找單詞的同義詞和根
給出一個詞,是否有可能在JAVA中找到它的同義詞和它的根?我應該用字典嗎?
如:
word: killer
synonym: murderer butcher hitman
word: killing
root: kill
一種選擇是將WordNet與Java API一起使用,例如, JAWS:http://lyle.smu.edu/~tspell/jaws
你一定要使用字典,至少對同義詞,因爲沒有標準的「代名詞-名單」中的JRE可用。
至於根源這個過程被稱爲詞幹(谷歌爲此)。有一些(Java)的庫這樣的:http://snowball.tartarus.org/download.php
我建議找一個在線網站,您可以訪問一個同義詞詞典,而不必建立自己的API。它將足夠大,以至於你不想將它保存在內存中,因此如果你要自己做,你將不得不擁有一些外部存儲位置。
是的,您將需要某種查找。 – Randy 2011-02-07 16:14:10
用戶可以輸入多少個單詞?我讀過有近100萬個英文單詞。所以有一些內存限制。其次,我不認爲你想多次存儲單詞,這可能會以指數形式爆炸你的記憶使用。例如,在字典殺手會指向兇手,屠夫,殺手......但是那麼兇手也會指向殺手,屠夫,殺手等......理想情況下,你想要這些同義詞集指向自己,所以也許圖形結構會更好 – 2011-02-07 16:16:42