2018-09-06 Java實現英漢詞典API初版釋出在Maven
在打算時, 發現沒有現成的Java庫實現英漢查詢功能. 於是開此專案.
原始碼庫:
API使用中文命名. 原始碼也是.
使用時在Maven專案中新增依賴:
<dependency> <groupId>com.codeinchinese</groupId> <artifactId>english-chinese-dictionary</artifactId> <version>0.0.1</version></dependency>
詞典資料來源於. 77萬個詞條, 除不到2千詞之外絕大多數有中文釋義. 將這個詞典資料(csv檔案)封裝的後果是這個jar包有22MB, 首次呼叫'查詞'介面需要一段時間載入資料(本機測試十秒左右), 之後的查詞是雜湊表查詢, 速度還能接受.
下面是返回詞條資料結構:
public class 詞條 { public String 英文; public String 音標; public List<String> 英文釋義; public List<String> 中文釋義; public String 詞語位置; public int 柯林斯星級; public boolean 為牛津三千核心詞; // zk/中考,gk/高考,cet4/四級等 public String 標籤; // 如果為0, 無詞頻資料, 否則為正數 public int 英國國家語料庫詞頻順序; public int 當代語料庫詞頻順序; public List<詞形變化> 變形; public String 詳細; public String 線上讀音音訊; ... }
詞形的幾種變化:
public enum 詞形變化型別 { 過去式("p"), // past tense 過去分詞("d"), 現在分詞("i"), // -ing 第三人稱單數("3"), 形容詞比較級("r"), // -er 形容詞最高階("t"), // -est 名詞複數形式("s"), 原型("0"), 原型變換形式("1"); ... }
介面定義很簡單, 呼叫:
英漢詞典.查詞("apple")
返回值列印輸出(toString生成類JSON樣式, 下同):
{ 英文: apple 音標: 'æpl 英文釋義: n. fruit with red or yellow or green skin and sweet to tart crisp whitish flesh n. native Eurasian tree widely cultivated in many varieties for its firm rounded edible fruits 中文釋義: n. 蘋果, 傢伙 [醫] 蘋果 詞語位置: 柯林斯星級: 3為牛津三千核心詞: true標籤: zk gk 英國國家語料庫詞頻順序: 2446當代語料庫詞頻順序: 2695變形: 名詞複數形式:apples; 詳細: 線上讀音音訊: }
可以查出原型:
{ 英文: shopping 音標: 'ʃɒpiŋ 英文釋義: n. searching for or buying goods or services n. the commodities purchased from stores 中文釋義: n. 買東西, 購物 [經] 購物, 買東西 詞語位置: 柯林斯星級: 3為牛津三千核心詞: true標籤: gk cet4 cet6 ielts 英國國家語料庫詞頻順序: 2763當代語料庫詞頻順序: 2713變形: 原型:shop; 原型變換形式:i; 現在分詞:shopping; 詳細: 線上讀音音訊: }
也有很多常見短語:
{ 英文: beat around the bush 音標: 英文釋義: 中文釋義: 轉彎抹角, 旁敲側擊, 拖延談及正題 詞語位置: 柯林斯星級: 0為牛津三千核心詞: false標籤: 英國國家語料庫詞頻順序: 0當代語料庫詞頻順序: 0變形: 詳細: 線上讀音音訊: }
其中釋義部分只根據源資料格式說明中按行分拆, 並未進行進一步提取. 打算以後在實際使用中進行改進. 也許"n. 蘋果, 傢伙"提取為:
{ 詞性: 名詞 釋義: ["蘋果", "傢伙"] }
歡迎嚐鮮.
作者:
原文連結:https://www.cnblogs.com/program-in-chinese/p/10499283.html
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4830/viewspace-2822209/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 一個簡單的英漢詞典小程式
- Qt實用技巧:Qt+Sql server英漢漢英電子詞典QTSQLServer
- 四種免費英漢電子詞典軟體簡評
- 這本英漢詞典怎麼是日本人寫的?不用翻譯?
- 【前端詞典】分享 8 個有趣且實用的 API前端API
- 有道詞典釋出Linux版本,實現主流平臺全覆蓋Linux
- Solaris庫執行緒實現分析 初版執行緒
- 雙向最大匹配演算法——基於詞典規則的中文分詞(Java實現)演算法中文分詞Java
- 雙向連結串列的功能實現(初版
- 使用Android簡單實現有道電子詞典Android
- 【前端詞典】如何向老闆解釋反向代理前端
- 【前端詞典】實現 Canvas 下雪背景引發的效能思考前端Canvas
- 另類PEtite V2.2 脫殼+修復+破解――英漢漢英雙向學習詞典 V1.0
- 【LeetCode-面試演算法經典-Java實現】【139-Word Break(單詞拆分)】LeetCode面試演算法Java
- MapReduce實現與自定義詞典檔案基於hanLP的中文分詞詳解HanLP中文分詞
- 【前端詞典】4 種滾動吸頂實現方式的比較前端
- Java中名詞的解釋Java
- Hanlp中使用純JAVA實現CRF分詞HanLPJavaCRF分詞
- 經典排序演算法及其 Java 實現排序演算法Java
- HBuilder開發詞典app(四)--呼叫有道api完成翻譯功能UIAPPAPI
- mac詞典怎麼用?Macbook自帶詞典使用技巧Mac
- Lucene 4.X 倒排索引原理與實現: (1) 詞典的設計索引
- Vue 2.5釋出在即 將全面支援TypeScriptVueTypeScript
- Java簡單實現漢語詞頻統計Java
- Go語言實現的Java Stream APIGoJavaAPI
- 相容OpenTracing API的Java實現APIJava
- Java Stream API:實現 Kruskal 演算法JavaAPI演算法
- 經典n皇后問題java程式碼實現Java
- 歐陸詞典 Eudic
- Spark 灰度釋出在十萬級節點上的成功實踐 CI CDSpark
- 英語詞典翻譯查詢工具:Eudic歐路詞典 for MacMac
- Maven經典使用指南Maven
- 釋出在即,全新 EMQX v5.0 搶先看!MQ
- Java 實現《編譯原理》簡單詞法分析功能Java編譯原理詞法分析
- AQS:JAVA經典之鎖實現演算法(一)AQSJava演算法
- Java的關鍵詞和註釋符Java
- AI千戀萬花(java呼叫api實現)附完整專案及註釋)重置版)AIJavaAPI
- Eudic歐路詞典 for MacMac