本發(fā)明涉及一種基于詞典平臺的字符串解釋方法及詞典平臺。
背景技術(shù):
在傳統(tǒng)方法中,對于詞典的使用通常是固定的,通過用戶輸入獲取需要解釋的字符串,導(dǎo)入后在詞典中查找。對于用戶輸入的字符串的自動校正和文本預(yù)測是使用靜態(tài)語言模型產(chǎn)生的,靜態(tài)語言模型可以是用測試模擬開放的并且被硬編碼在設(shè)備上,用戶可以能夠明確地將字詞添加到模型中或忽略字詞,但是在其他方面,靜態(tài)語言模型可能不適配于特定用戶和交互情景。因此,使用傳統(tǒng)技術(shù)提供的文本預(yù)測候選結(jié)果是對用戶和/或情景經(jīng)常是不恰當(dāng)?shù)幕虿幌嚓P(guān)的,這可能導(dǎo)致挫敗和缺少對預(yù)測的信任。
技術(shù)實現(xiàn)要素:
本發(fā)明所要解決的技術(shù)問題是,針對現(xiàn)有技術(shù)的不足,提供一種能夠?qū)攵喾N詞典,對多種語言種類的字符串進行解釋的基于詞典平臺的字符串解釋方法及詞典平臺。
本發(fā)明解決上述技術(shù)問題的技術(shù)方案如下:一種基于詞典平臺的字符串解釋方法,其應(yīng)用于詞典平臺中,包括以下步驟:
S1,接收用戶輸入的字符串;
S2,將字符串與預(yù)先導(dǎo)入的至少一個詞典進行匹配,獲得至少一個解釋信息,并通過一級展示界面輸出;
S3,通過對一級展示界面的操作,控制展示或隱藏二級展示界面,所述二級展示界面輸出對詞典的管理操作按鍵。
本發(fā)明的有益效果是:本發(fā)明提供的方法可以對多種語言的字符串進行解釋,并具有自學(xué)習(xí)功能,可以導(dǎo)入多個詞典,可以對多種語言實現(xiàn)翻譯;通過一級展示界面和二級展示界面的方式展示字符串信息的解釋信息和詞典的相關(guān)信息,使用戶可以根據(jù)選擇查看全部或部分信息,使字符串翻譯更快速。
在上述技術(shù)方案的基礎(chǔ)上,本發(fā)明還可以做如下改進。
進一步,所述S1還包括,判斷接收的字符串的語言種類,根據(jù)語言種類將字符串在搜索框中正確顯示。
采用上述進一步技術(shù)方案實現(xiàn)的技術(shù)效果是,對于不同字體如:梵語天城體、拉丁文字母轉(zhuǎn)寫、藏語、蒙語、滿語、希伯來語等;支持不同的書寫方式和顯示方式,左至右、從右到左、從上到下不同字體顯示方式都能支持,不會出現(xiàn)顯示錯誤和部分字符不顯示的問題。
進一步,所述S2中獲取一個詞典中對應(yīng)所述字符串信息對應(yīng)的解釋信息包括以下步驟:
字符串與詞典中保存的所有字符串進行匹配,將匹配的字符串及字符串對應(yīng)的解釋信息輸出,得到字符串對應(yīng)該詞典的所有解釋信息。
進一步,所述S2中對獲得的至少一個解釋信息進行排序,將排序后的解釋信息通過一級展示界面輸出。
進一步,所述排序過程包括以下步驟:
獲取所有解釋信息對應(yīng)的詞典,得到至少一個詞典;
獲取每個詞典的文化信息,將所有文化信息中重復(fù)最多的設(shè)置為標(biāo)準(zhǔn)文化信息;
按照標(biāo)準(zhǔn)文化信息中設(shè)定的詞序?qū)λ薪忉屝畔⑦M行降序排列。
采用上述進一步技術(shù)方案實現(xiàn)的技術(shù)效果是,一個詞典只有一個文化信息,獲取每個詞典的文化信息,之后可以得到出現(xiàn)次數(shù)最多的文化信息。
其中,文化信息是從Cultrure Information直譯過來的,指的是:這個詞典基于的語言和文化,它不單指國家和語言。比如:《新華詞典》的文化信息就是:中國-漢語;《藏漢大辭典》的文化信息就是:中國-藏語。
進一步,對得到的所有解釋信息中對應(yīng)同一詞典的至少一個解釋信息加入到一個DIV標(biāo)簽中。
進一步,將得到的所有DIV標(biāo)簽匯總得到一個HTML文檔格式的解釋文本。
HTML超文本標(biāo)記語言,標(biāo)準(zhǔn)通用標(biāo)記語言下的一個應(yīng)用?!俺谋尽本褪侵疙撁鎯?nèi)可以包含圖片、鏈接,甚至音樂、程序等非文字元素。超文本標(biāo)記語言的結(jié)構(gòu)包括“頭”部分(英語:Head)、和“主體”部分(英語:Body),其中“頭”部提供關(guān)于網(wǎng)頁的信息,“主體”部分提供網(wǎng)頁的具體內(nèi)容。
DIV標(biāo)簽(DIV元素):是用來為HTML文檔內(nèi)大塊(block-level)的內(nèi)容提供結(jié)構(gòu)和背景的元素。DIV的起始標(biāo)簽和結(jié)束標(biāo)簽之間的所有內(nèi)容都是用來構(gòu)成這個塊的,其中所包含元素的特性由DIV標(biāo)簽的屬性來控制,或者是通過使用樣式表格式化這個塊來進行控制。DIV標(biāo)簽稱為區(qū)隔標(biāo)記。作用:設(shè)定字、畫、表格等的擺放位置。當(dāng)你把文字、圖象,或其他的放在DIV中,它可稱作為“DIV block”,或“DIV element”或“CSS-layer”,或干脆叫“l(fā)ayer”。而中文我們把它稱作“層次”。
進一步,所述二級展示界面輸出的對詞典的管理操作按鍵包括查看詞典按鍵、添加詞典按鍵和刪除詞典按鍵;
所述二級展示界面還輸出詞典詳細(xì)信息。
進一步,所述二級展示界面輸出的按鍵還包括搜索按鍵,所述搜索按鍵 用于在所有詞典中快速選擇一個詞典。
進一步,所述詞典平臺對預(yù)先導(dǎo)入的每個詞典中的所有文本解釋建立一個p標(biāo)簽,將解釋信息添加到所述p標(biāo)簽中,基于所有p標(biāo)簽設(shè)置一套HTML樣式表;所述字符串與詞典中的字符串進行匹配時,通過引用HTML樣式表獲得解釋信息。
p標(biāo)簽是段落標(biāo)簽,里面可以加入文字,列表,表格等。
p標(biāo)簽是成對出現(xiàn)的,以<p>開始,以</p>結(jié)束;屬性:Common--一般屬性;p是paragraph的縮寫。
采用上述進一步技術(shù)方案實現(xiàn)的技術(shù)效果是,由于較老的詞典版本較為簡單,均為文本解釋,而新的詞典基于HTML技術(shù),給予了更豐富的內(nèi)容展示,因此存在HTML/普通文本混合展示的問題,通過上述技術(shù)手段解決了這個問題。通過導(dǎo)入詞典可以不斷對本發(fā)明進行升級,即使出現(xiàn)開放詞典中不存在的單詞也僅需針對此單詞進行加載相應(yīng)詞典即可,通過不斷加載可不斷擴展其功能范圍,以適應(yīng)技術(shù)的發(fā)展。
本發(fā)明解決上述技術(shù)問題的技術(shù)方案如下:一種詞典平臺,包括:
接收模塊,接收用戶輸入的字符串;
一級展示模塊,將字符串與預(yù)先導(dǎo)入的至少一個詞典進行匹配,獲得至少一個解釋信息,并通過一級展示界面輸出;
二級展示模塊,通過對一級展示界面的操作,控制展示或隱藏二級展示界面,所述二級展示界面輸出對詞典的管理操作按鍵。
附圖說明
圖1為本發(fā)明實施例1所述的一種基于詞典平臺的字符串解釋方法流程圖;
圖2為本發(fā)明實施例2所述的一種詞典平臺結(jié)構(gòu)示意圖;
圖3為本發(fā)明具體示例中導(dǎo)入StarDict的生成方法流程圖;
圖4為本發(fā)明具體示例中導(dǎo)入MDict的流程圖;
圖5為本發(fā)明具體示例中得到單詞列表的流程圖;
圖6為本發(fā)明具體示例中讀取單詞和解釋的流程圖;
圖7為本發(fā)明具體示例中得到單詞序號的流程圖;
圖8為本發(fā)明具體示例中得到單詞列表的流程圖。
附圖中,各標(biāo)號所代表的部件列表如下:
1、接收模塊,2、一級展示模塊,3、二級展示模塊。
具體實施方式
以下結(jié)合附圖對本發(fā)明的原理和特征進行描述,所舉實例只用于解釋本發(fā)明,并非用于限定本發(fā)明的范圍。
如圖1所示,為本發(fā)明實施例1所述的一種基于詞典平臺的字符串解釋方法,其應(yīng)用于詞典平臺中,包括以下步驟:
S1,接收用戶輸入的字符串;
S2,將字符串與預(yù)先導(dǎo)入的至少一個詞典進行匹配,獲得至少一個解釋信息,并通過一級展示界面輸出;
S3,通過對一級展示界面的操作,控制展示或隱藏二級展示界面,所述二級展示界面輸出對詞典的管理操作按鍵。
所述S1還包括,判斷接收的字符串的語言種類,根據(jù)語言種類將字符串在搜索框中正確顯示。
所述S2中獲取一個詞典中對應(yīng)所述字符串信息對應(yīng)的解釋信息包括以下步驟:
字符串與詞典中保存的所有字符串進行匹配,將匹配的字符串及字符串對應(yīng)的解釋信息輸出,得到字符串對應(yīng)該詞典的所有解釋信息。
所述S2中對獲得的至少一個解釋信息進行排序,將排序后的解釋信息通過一級展示界面輸出。
所述排序過程包括以下步驟:
獲取所有解釋信息對應(yīng)的詞典,得到至少一個詞典;
獲取每個詞典的文化信息,將所有文化信息中重復(fù)最多的設(shè)置為標(biāo)準(zhǔn)文化信息;
按照標(biāo)準(zhǔn)文化信息中設(shè)定的詞序?qū)λ薪忉屝畔⑦M行降序排列。
在具體實施中,由于詞典種類繁多,包含多種文化,因此排序涉及到了多個語言。
根據(jù)用戶輸入的字符串,可在已加載的詞典中找到匹配的單詞,假設(shè)成功匹配的詞典為D1,D2,D3……。
獲取D1,D2,D3……的文化信息(文化信息是從Cultrure Information直譯過來的,指的是:這個詞典基于的語言和文化,它不單指國家和語言),并得到出現(xiàn)次數(shù)最多的文化信息,記錄為CI(標(biāo)準(zhǔn)信息)。
對系統(tǒng)搜索得到所有單詞,按照文化CI,進行遞增排序。
例如:
現(xiàn)在已經(jīng)加載了20部詞典,10部英語詞典,10部漢語詞典。
這些詞條在所有英語詞典中都沒有匹配,在所有漢語詞典中都有匹配。
此時成功匹配的就是10部漢語詞典,它們的文化信息都是中國-漢語,所以出現(xiàn)次數(shù)最多的文化信息就是:中國-漢語。
然后把詞條列表L按照中國-漢語的詞序排序。
解釋信息:詞條,和它對應(yīng)的解釋。(可以來源于多部詞典,這個解釋是一個html)。
解釋信息舉例:天氣-一種現(xiàn)象(漢語詞典1),經(jīng)常談?wù)摰脑掝}(漢語詞典2)。
對得到的所有解釋信息中對應(yīng)同一詞典的至少一個解釋信息加入到一個DIV標(biāo)簽中。
將得到的所有DIV標(biāo)簽匯總得到一個HTML文檔格式的解釋文本。
HTML超文本標(biāo)記語言,標(biāo)準(zhǔn)通用標(biāo)記語言下的一個應(yīng)用?!俺谋尽本褪侵疙撁鎯?nèi)可以包含圖片、鏈接,甚至音樂、程序等非文字元素。超文本標(biāo)記語言的結(jié)構(gòu)包括“頭”部分(英語:Head)、和“主體”部分(英語:Body),其中“頭”部提供關(guān)于網(wǎng)頁的信息,“主體”部分提供網(wǎng)頁的具體內(nèi)容。
DIV標(biāo)簽(DIV元素):是用來為HTML文檔內(nèi)大塊(block-level)的內(nèi)容提供結(jié)構(gòu)和背景的元素。DIV的起始標(biāo)簽和結(jié)束標(biāo)簽之間的所有內(nèi)容都是用來構(gòu)成這個塊的,其中所包含元素的特性由DIV標(biāo)簽的屬性來控制,或者是通過使用樣式表格式化這個塊來進行控制。DIV標(biāo)簽稱為區(qū)隔標(biāo)記。作用:設(shè)定字、畫、表格等的擺放位置。當(dāng)你把文字、圖象,或其他的放在DIV中,它可稱作為“DIV block”,或“DIV element”或“CSS-layer”,或干脆叫“l(fā)ayer”。而中文我們把它稱作“層次”。
所述二級展示界面輸出的對詞典的管理操作按鍵包括查看詞典按鍵、添加詞典按鍵和刪除詞典按鍵;
所述二級展示界面還輸出詞典詳細(xì)信息。
所述二級展示界面輸出的按鍵還包括搜索按鍵,所述搜索按鍵用于在所有詞典中快速選擇一個詞典。
所述詞典平臺對預(yù)先導(dǎo)入的每個詞典中的所有文本解釋建立一個p標(biāo)簽,將解釋信息添加到所述p標(biāo)簽中,基于所有p標(biāo)簽設(shè)置一套HTML樣式表;所述字符串與詞典中的字符串進行匹配時,通過引用HTML樣式表獲得解釋信息。
p標(biāo)簽是段落標(biāo)簽,里面可以加入文字,列表,表格等。
p標(biāo)簽是成對出現(xiàn)的,以<p>開始,以</p>結(jié)束;屬性:Common--一般屬 性;p是paragraph的縮寫。
如圖2所示,為本發(fā)明實施例2所述的一種詞典平臺,包括:
接收模塊1,接收用戶輸入的字符串;
一級展示模塊2,將字符串與預(yù)先導(dǎo)入的至少一個詞典進行匹配,獲得至少一個解釋信息,并通過一級展示界面輸出;
二級展示模塊3,通過對一級展示界面的操作,控制展示或隱藏二級展示界面,所述二級展示界面輸出對詞典的管理操作按鍵。
以下以具體示例說明本發(fā)明所述的一種開源詞典的應(yīng)用方法,
支持兩種主流的詞典:StarDict(星際譯王詞典),MDict詞典。
具體的格式:.ifo;.dict;.dict.dz,.idx,.mdx,.wordsoffset;
詞典在做什么:
1.管理用戶的詞典。
2.對用戶輸入的單詞進行解釋。
導(dǎo)入StarDict的過程:
導(dǎo)入過程為記錄詞典存儲的邏輯路徑和基本信息;
記錄以下文件:
1.詞典信息:.info。
2.詞典每個單詞的解釋:.dict。
3.詞典每個單詞的信息:.idx。(單詞本身,單詞的解釋在.dict中的位置)。
4.詞典每個單詞的位置信息:.wordsoffset。
1為純文本,解析得到詞典的信息。
由3生成新的文件.wordsoffset,用于記錄每個單詞信息在3中的位置,生成方法如圖4所示:
導(dǎo)入MDict的過程:
如圖5按照Mdict的格式進行解析,并記錄下mdict詞典的邏輯存儲路徑。
得到相關(guān)的數(shù)據(jù):
包含詞典信息的鍵值對:Headers;
包含所有數(shù)據(jù)塊的列表:IdxBlockInfoList;
鍵值對:鍵值對(Key-Value)是一個常用的數(shù)據(jù)結(jié)構(gòu)概念,通常又稱為字典(Dictionary)或映射(Map)。每個存放到該數(shù)據(jù)結(jié)構(gòu)中的值(Value)都對應(yīng)一個全局唯一的鍵(Key)。
數(shù)據(jù)塊:包含起始單詞,結(jié)束單詞,以及這個區(qū)間內(nèi)的所有單詞信息的列表。
單詞信息:包含單詞的解釋在文件中的位置,和單詞本身。
如何得到單詞列表和解釋(星際詞王)。
如何得到單詞列表:如圖6所示;
如何讀取單詞,和解釋(根據(jù)序號):如圖7所示;
如何得到單詞序號:如圖8所示;
如何得到單詞列表和解釋,Mdict,如何得到單詞列表:如圖8所示。
如何得到單詞解釋:通過單詞信息,得到單詞在mdx文件中的位置index,和數(shù)據(jù)長度L,讀取[index,index+L]內(nèi)的所有數(shù)據(jù),并轉(zhuǎn)換為字符串,即可得到單詞解釋。
查詢結(jié)果的展示:查詢結(jié)果包含多個或者一個{詞典名字,單詞,單詞解釋}的結(jié)構(gòu)體。
每個結(jié)構(gòu)體均生成一個Html語言中的Div,并加入展開/收起按鈕,用戶隱藏不必要的Div以減輕視覺負(fù)擔(dān)。
歷史記錄:記錄最近用戶查詢的單詞,個數(shù)不超過100。
界面設(shè)計:考慮到查詢操作的頻率遠(yuǎn)遠(yuǎn)高于其他操作,大部分的空間被 留給單詞列表和單詞解釋。
當(dāng)前選中的單詞被高亮,提示用戶當(dāng)前被解釋的單詞是什么。
查詢結(jié)果中的每一部詞典標(biāo)題被高亮,幫助用戶快速定位每一部詞典解釋的位置,從而更輕易的操作展開收起。
考慮到查看/添加/刪除詞典操作的頻率較低,因此詞典管理被隱藏1級菜單,通過點擊詞典管理開啟。
考慮到查看/添加詞典的頻率>>刪除的頻率,刪除功能被隱藏到2級菜單,通過點擊詳細(xì)開啟
二級菜單提供最詳細(xì)的詞典信息,和管理功能。
考慮到詞典的數(shù)量可能較多,因此提供搜索功能。
所有功能的展開/收起,均以動畫過渡,保證視覺上的連續(xù)。
以上所述僅為本發(fā)明的較佳實施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。