有時候在進行文字處理的時候,是需要辨識文字的語系來進行不同的判斷。

Language Detection 這個功能已有一個接近完善的 Java API,其主要網址如下:

https://code.google.com/archive/p/language-detection/

Jar 檔則可以從上述網址的 Downloads 去抓。

解壓縮後記得 import langdetect.jar 並且把解壓縮後資料夾中的 profiles 資料夾擺到自己的專案下方,這個資料夾裡面紀錄的是每個語系的資料,主要是用來辨識的。

注意一點的是,我們還需要額外去找一個 jar 進行 import,它叫做 Jsonic,請使用下列網址抓取,抓完也要 import。

https://mvnrepository.com/artifact/net.arnx/jsonic/1.2.9

接下來我們來看程式碼:

 

上述程式碼中,Line 16 -23 是 language detection 初始化的函式,這個是一定要跑的,記得給 profiles 資料夾的路徑,如 line 9 所述。

Line 25 - 36 則是辨識文字的語系,其中 catch 的區塊寫了一個 return "unknown" 是代表文字無法識別語系的時候,會 return unknown。

Line 38 - 48 則是會 return 辨識出來的語系與其機率值,由於辨識的時候是使用貝式機率模型,所以還是會有機率值。

上述程式碼的結果如下:

語系辨識結果 : zh-tw
語系辨識機率: [zh-tw:0.9999956350629244]

 

arrow
arrow
    全站熱搜

    葛瑞斯肯 發表在 痞客邦 留言(0) 人氣()