按音標(biāo)查詢的英漢電子詞典的設(shè)計(jì)與實(shí)現(xiàn)
3.3 模糊查詢處理 基于音標(biāo)的模糊查詢,類似于很多輸入法提供的“南方模糊音”功能,即以用戶潛在的由于音標(biāo)讀音相似產(chǎn)生的輸入錯(cuò)誤為基礎(chǔ),對(duì)無(wú)法直接匹配的輸入進(jìn)行相似的代換并對(duì)每一種代換進(jìn)行查找。例如對(duì)于音標(biāo)tr很容易與音標(biāo)t∫混淆,因此對(duì)于可能出現(xiàn)的習(xí)慣上的錯(cuò)誤對(duì)音標(biāo)進(jìn)行查詢的等價(jià)類劃分,本系統(tǒng)做了如下劃分:
需要說(shuō)明的是,這種劃分只是來(lái)源于實(shí)際的經(jīng)驗(yàn),衡量任何一種劃分成功與否必須通過(guò)音標(biāo)的錯(cuò)誤使用統(tǒng)計(jì)和用戶的反饋來(lái)確定。對(duì)于正常查詢無(wú)法查得的音標(biāo),用戶可以有選擇地應(yīng)用以上的等價(jià)代碼重新進(jìn)行查找。但應(yīng)用等價(jià)代換會(huì)非常顯著地降低查詢效率,因此必須對(duì)查詢的規(guī)模進(jìn)行限制,如最多開啟三個(gè)等價(jià)集或者進(jìn)行重新等價(jià)劃分等。 另外對(duì)于比較長(zhǎng)的音標(biāo)輸入,可以將音標(biāo)輸入的前一半或者1/3長(zhǎng)度作為模糊查詢的輸入依據(jù),這樣模糊查詢的范圍雖然會(huì)有所擴(kuò)大,但是卻節(jié)省了查詢浪費(fèi)的時(shí)間。總之,以等價(jià)代換查詢?yōu)榛A(chǔ),可以采用很多策略來(lái)限制查詢的復(fù)雜度,但是具體哪一種策略更好,需要對(duì)音標(biāo)構(gòu)成和用戶輸入習(xí)慣做大量的統(tǒng)計(jì)和實(shí)驗(yàn)得出。查詢流程如圖1所示。 在具體的實(shí)現(xiàn)上,使用了遞歸函數(shù),其基本算法如下: FuzzySearch(Cstring str,int n){ Length=str.GetLength(); if(length<=n){ ExactSearch(str); //完全匹配查找 return; } else {//對(duì)第n個(gè)字母進(jìn)行搜索尋找等價(jià)代換; //如果找到則從該等價(jià)第一個(gè)字母開始進(jìn)行代換; //代換后的音標(biāo)str2作為遞歸入口送入; FuzzySearch(str2,n+1); //同樣的str3、str4; FuzzySearch(str3,n+1); FuzzySearch(str4,n+1); //對(duì)于雙元音代換,則是: FuzzySearch(str5,n+2); //如無(wú)法找到等價(jià)代換,則: FuzzySearch(str,n+1); } } 對(duì)已輸入的音標(biāo)先進(jìn)行完全匹配,如完全匹配挫敗則對(duì)已輸入音標(biāo)(剛輸入的音標(biāo))進(jìn)行等價(jià)集代換,并把模糊查詢的結(jié)果添加到列表,作為進(jìn)一步模糊查詢的基礎(chǔ)。由于縮小了搜索范圍,在速度上有一定優(yōu)勢(shì)。
4 界面設(shè)計(jì) 界面以及風(fēng)格的設(shè)計(jì)已成為Windows編程十分重要的一環(huán),合理的設(shè)計(jì)會(huì)提高用戶使用效率。如果采用英式音標(biāo)輸入,則至少需要44個(gè)音標(biāo)按鈕。另一種方案是省略雙元音和某些由兩個(gè)音標(biāo)符號(hào)組成的輔音(如t∫)由用戶自行輸入t和∫,這樣可以減少面板上音標(biāo)按鈕的數(shù)量。但多數(shù)人在學(xué)習(xí)音標(biāo)時(shí),習(xí)慣上是將雙元音作為一個(gè)整體為記憶,折開后反而不自然。所以,面板排列由44個(gè)音標(biāo)按鈕組成,為方便用戶快速錄入,將其按習(xí)慣分成三個(gè)區(qū),即單元音區(qū)、雙元音區(qū)和輔音區(qū),并將發(fā)音相似的音標(biāo)排列在一起,如圖2所示。 本系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)具有很強(qiáng)的實(shí)用價(jià)值。將本系統(tǒng)所帶的詞庫(kù)進(jìn)行擴(kuò)充,即可形成標(biāo)準(zhǔn)的電子詞典系統(tǒng)。若將本系統(tǒng)的算法加以固化,即可形成固件產(chǎn)品,具有很好的應(yīng)用前景。














評(píng)論