折騰詞庫,一個詞庫互轉程式

來源:互聯網
上載者:User

我在之前寫過一個小程式,用於實現QQ拼音、搜狗拼音、Google拼音和百度手機拼音IME詞庫的互轉,文章地址是:http://www.cnblogs.com/studyzy/archive/2009/12/31/1637030.html

本來我只是出於從將個人的詞庫從QQ拼音匯入到搜狗拼音中,隨手寫的個小程式,結果哪知道原來大家都有和我類似的需求,希望實現各種IME詞庫的相互轉換;另外現在智能手機越來越多,在手機上的IME也競爭相當激烈,QQ手機拼音、搜狗手機拼音、百度手機拼音等IME都出來的,有些手機IME也支援詞庫的匯入匯出,所以也用得到我這個詞庫互轉程式。最近又有人提出,希望將搜狗的細胞詞庫和QQ的分類詞庫轉換成其他IME的詞庫,這個功能也很有必要,所以我打算繼續折騰這個程式,將詞庫轉換的範圍繼續擴大!

經過兩天的努力,終於完成了我的詞庫轉換小工具,將現有詞庫的以文字格式設定匯出,然後選擇源詞庫格式和新詞庫格式,單擊“轉換”按鈕即可詞庫格式的轉換。放出程式:

目前我這個轉換小工具還只支援純文字格式的詞庫,因為對於搜狗細胞詞庫(scel格式)和QQ分類詞庫(qpyd格式)我沒有具體的解析這些詞庫的演算法或者程式集,所以無法解析成文本並進行轉換。如果大家誰知道怎麼解析搜狗細胞詞庫和QQ分類詞庫的話還希望不吝賜教!

如果希望將搜狗細胞詞庫匯入到Google拼音中,該怎麼實現呢?首先需要到官方網站去下載txt格式的細胞詞庫,該詞庫中只有詞條,沒有拼音!選擇該txt檔案,然後選擇“搜狗細胞詞庫Txt”作為轉換源,以Google拼音作為目標格式即可!

對於沒有拼音的文本詞庫,程式會找到每個字的拼音,自動產生帶拼音的詞庫,這裡面有一個問題是出現多音字怎麼辦?我在進階設定中給出了一個“忽略多音字”的選項,預設是選中的,所以會導致很多詞的拼音是錯誤的,比如“音樂”會被拼字成“yin le”,因為樂是多音字,只取了其一個音“le”。如果取消了“忽略多音字”選項,那麼所有的多音字的拼音就都會出現在詞庫中,形成詞條中多音字的所有組合,:

本來1895個詞條,經過多音字的組合,就變成了7597條!這樣導致詞庫變得太大,而且IME處理起來也困難,所以不建議使用。對於詞條中多音字的處理不知道大家還有沒有更好的辦法能夠獲得一個詞的準確拼音,不要將“音樂”變成“yin le”了。

另外我還設定了詞條長度的篩選功能,將單個字的詞條、長度大於指定長度的詞條都篩選掉,不進行轉換。

現在這個程式功能還很弱,只支援:百度手機、QQ手機、搜狗拼音、搜狗五筆、QQ拼音、Google拼音、搜狗細胞詞庫Txt,仍然有以下問題有待解決:

  • 如何解析搜狗細胞詞庫scel格式和QQ分類詞庫qpyd格式?
  • 如何獲得QQ分類詞庫的Txt格式?
  • 如何獲得一個詞條的準確拼音?
  • 搜狗手機IME好像不支援本地詞庫匯入,電腦上的詞庫就沒辦法匯入到其中了?
  • 支援更多的IME類型的詞庫。

我已經將程式碼放到Google Code中,有興趣的可以看看,地址:http://code.google.com/p/imewlconverter/

 

這裡放出可執行檔,方便有同樣需求的人來一起折騰詞庫,:/Files/studyzy/深藍詞庫轉換小工具-v1.0.zip

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.