MMSeg是由Chih-Hao Tsai所開發,裡面包含了兩種類型的長詞優先斷詞演算法(Maximum Matching Algorithm)。其官網如下:
http://technology.chtsai.org/mmseg/
MMSeg也有發佈在 Google project中,可從其下載 jar 檔:
https://code.google.com/archive/p/mmseg4j/downloads
解壓縮後,之後import mmseg4j-core-1.9.1.jar的檔案
接著使用 Complex 方法來進行斷詞,並且使用預設的詞庫:
Sample Code:
String txt = "我想看電影";
//辭典目錄
File file = new File("./MMSeg4j");
//初始化辭典
Dictionary dic = Dictionary.getInstance(file);
Seg seg = null;
//MMSeg有兩個模式,一個是 Simple,另一個則是 Complex
// seg = new SimpleSeg(dic);
seg = new ComplexSeg(dic);
MMSeg mmSeg = new MMSeg(new StringReader(txt), seg);
Word word = null;
while((word = mmSeg.next())!=null) {
if(word != null) {
System.out.print(word + "|");
}
}
上述的程式碼,辭典目錄裡面是空的,所以結果為:
接下來,我們來新增詞彙”電影”這個詞。
我們在 project中新增 MMSeg4j資料夾,並且新增一個 words.dic檔案在此資料夾底下,每一行就是一個詞彙,我們只建立一個”電影”的詞彙,如下 :
接著重新執行此斷詞系統,會得到下列結果:
我們發現”電影”就會斷在一起了。
文章標籤
全站熱搜
