專利名稱:通配符查詢字典字詞系統(tǒng)及其方法
技術(shù)領(lǐng)域:
一種查詢字典字詞系統(tǒng)及其方法,特別是指涉及一種使用通配符查詢字 詞的通配符查詢字典字詞系統(tǒng)及其方法。
背景技術(shù):
字典對于現(xiàn)代人來說,相當(dāng)?shù)挠袔椭ㄟ^字典可以查詢不同語言之間
的字詞解釋,例如以英語查詢漢語解釋的英漢字典、以漢語查詢英語解釋 的漢英字典等。
對于英漢字典而言,提供一種通配符查詢英漢字典字詞的功能,所謂的 通配符即為"*"字符以及"?"字符兩種字符,"*"字符所代表"0~~" 多個任意字符,"?,,字符所代表一個任意字符。因此,假如使用者輸入"a b" 即為查詢字首為a字符以及字尾為b字符三個字符的所有英文字詞;假如使 用者輸入"a*b"即為查詢字首為a字符以及字尾為b字符多個字符的所有 英文字詞。
對于使用通配符查詢英漢字典字詞的功能,其功能并無法滿足快速查詢 的要求,需要花費數(shù)秒鐘的時間,方能查詢出結(jié)果;以結(jié)果分析而言,查詢 出的字詞并未列出所有符合通配符要求的字詞,甚至不準(zhǔn)確;舉例來說,當(dāng) 4tJ ) ^[",lr入"氺氺77承承承77承氺7承77承承77777承承7777777承承77777承承承承7777承承氺"日t, 確的查詢結(jié)果為28個字符以上的字詞,但是卻找出"American" 28個字符 以下的字詞,明顯的指出不精確查詢結(jié)果。
綜上所述,可知現(xiàn)有技術(shù)中長期以來一直存在使用通配符查詢英漢字典 字詞不精確的問題,因此有必要提出改進的技術(shù)方案,來解決此一問題
發(fā)明內(nèi)容
有鑒于現(xiàn)有技術(shù)存在使用通配符查詢英漢字典字詞不精確的問題,本發(fā)
明于是提供一種通配符查詢字典字詞系統(tǒng)及其方法,其中
本發(fā)明所提供的通配符查詢字典字詞系統(tǒng),應(yīng)用于字典,字典的英文字 詞由英文字母順序依序進行排序,并依序給予索引值并生成索引表,其系統(tǒng) 包含接收模塊、通配符處理模塊、索引范圍模塊、匹配模塊以及顯示模塊。
其中,接收模塊,用以接收第一查詢字詞,第一查詢字詞包含至少一通配符。
通配符處理模塊,以至少一個有效字符為界限,將第一查詢字詞中通配 符依據(jù)所包含的第一通配符及第二通配符進行分類并統(tǒng)計數(shù)目,將第一查詢 字詞重新組合為第二查詢字詞,并計算該第二查詢字詞的最小字符數(shù)量。
索引范圍模塊,以第二查詢字詞為基準(zhǔn)于索引表中找出的索引值,其最 大索引值及最小該索引值為索引范圍。
匹配模塊,依據(jù)索引范圍,進行索引值對應(yīng)的英文字詞與第二查詢字詞 進行匹配,將符合匹配的索引值記錄至查詢結(jié)果索引表中。
顯示模塊,通過查詢結(jié)果索引表中的索引值,找出對應(yīng)的英文字詞并顯
示o
本發(fā)明所提供的通配符查詢字典字詞方法,應(yīng)用于字典,字典的英文字 詞由英文字母順序依序進行排序,并依序給予索引值并生成索引表,其方法
包含下列步驟
首先,接收第一查詢字詞,第一查詢字詞包含至少一個通配符。
接著,以至少一個有效字符為界限,將第一查詢字詞中通配符依據(jù)所包 含的第一通配符及第二通配符進行分類并統(tǒng)計數(shù)目,將第一查詢字詞重新組 合為第二查詢字詞,并計算該第二查詢字詞的最小字符數(shù)量。
接著,以第二查詢字詞為基準(zhǔn)于索引表中找出的索引值,其最大索引值 及最小索引值為索引范圍。
接著,進行索引值對應(yīng)的英文字詞與第二查詢字詞進行匹配,將符合匹 配的索引值記錄至查詢結(jié)果索引表中。
最后,通過查詢結(jié)果索引表中的索引值,找出對應(yīng)的英文字詞并顯示。本發(fā)明所提供的系統(tǒng)與方法如上,與現(xiàn)有4支術(shù)之間的區(qū)別在于本發(fā)明將 字典的英文字詞由英文字母順序依序進行排序,并依序給予索引值并生成索 引表,當(dāng)使用者輸入具有通配符的查詢字詞時,以至少一個有效字符為界限, 將通配符進行分類整理,再找出索引范圍,即可以逐一比對索引范圍中的英 文字詞與查詢字詞,可以精確的找出符合通配符的英文字詞。
通過上述的技術(shù)方案,本發(fā)明可以達到使用通配符精確查詢出英文字詞 的技術(shù)效果。
圖1為本發(fā)明通配符查詢字典字詞系統(tǒng)的框圖。
圖2為本發(fā)明通配符查詢字典字詞方法的流程圖。 圖3為本發(fā)明字典的索引表生成示意圖。
具體實施例方式
以下將結(jié)合附圖及實施例來詳細說明本發(fā)明的之實施方式,以此對本發(fā) 明如何應(yīng)用技術(shù)方案來解決技術(shù)問題并達到技術(shù)效果的實現(xiàn)過程能充分理 解并據(jù)以實施。
以下將說明本發(fā)明通配符查詢字典字詞系統(tǒng)、運行方式及流程,并請同 時參考圖1以及圖2所示,圖1為本發(fā)明通配符查詢字典字詞系統(tǒng)框圖;圖 2為本發(fā)明通配符查詢字典字詞方法流程圖。
本發(fā)明所提供的通配符查詢字典字詞系統(tǒng),應(yīng)用于字典,將字典的英文 字詞由英文字母順序依序進行排序,并依序給予索引值并生成索引表,其系 統(tǒng)包含接收模塊IO、通配符處理模塊20、索引范圍模塊30、匹配模塊40 以及顯示模塊50。
其中,接收^t塊10,用以接收第一查詢字詞,第一查詢字詞包含至少 一個通配符(步驟100)。
第一查詢字詞為使用者輸入所要查詢的英文字詞;通配符包含第一通配 符以及第二通配符,第一通配符代表任意一個英文字母字符,第一通配符的代表符號可以為"?,,,第二通配符代表任意復(fù)數(shù)個英文字母字符,第二通 配符的代表符號可以為"*"。
通配符處理模塊20,依據(jù)接收模塊10所接收的第一查詢字詞進行處理, 將第一查詢字詞以至少一個有效字符為界限,將第一查詢字詞中所有連續(xù)的 通配符分別依據(jù)所包含的第一通配符及第二通配符進行分類并統(tǒng)計數(shù)目,同 時將第一通配符及統(tǒng)計后的數(shù)目放置于第二通配符之前,重新組合為第二查 詢字詞,并計算該第二查詢字詞的最小字符數(shù)量(步驟200)。
所謂的有效字符即為英文字母字符,依據(jù)英文字母字符為界限,即可以 將通配符分隔為不同的區(qū)段,當(dāng)通配符區(qū)分為不同區(qū)段后,通配符處理模塊 20將會依據(jù)不同的通配符區(qū)段,將第一通配符的數(shù)目記錄于第一通配符之 后,并保存一個第一通配符,其余的第一通配符將消除;至于第二通配符的 處理方法為,通配符處理模塊20將保存一個第二通配符,其余的第二通配 符將消除。
在此舉一個例子說明通配符處理模塊20的處理方法,當(dāng)使用者輸入 " *a* ** *b* *t** "時,接收模塊io將會接收第一查詢字詞為 " *a* ** *b* *t** ",并傳送至通配符處理才莫塊20;通配符處理才莫 塊20會開始進行處理,首先,通配符處理模塊20找出的第一有效字符為"a" 字符,以有效字符"a"字符為界限之前具有通配符為"? *,,。
通配符處理模塊20會開始進行通配符處理,統(tǒng)計第一通配符"?"字符 的數(shù)目為2,并將第一通配符的數(shù)目為2記錄于第一個第一通配符之后,并 保存第一個第一通配符,其余的第一通配符將消除;保存第一個第二通配符,
其余的第二通配符將消除,同時將第 一通配符以及第 一通配符的數(shù)目放置于 第二通配符之前,重新組合通配符為"?2*"。
接下來,通配符處理模塊20找出的第二有效字符為"b,,字符,以第一 有效字符"a,,字符以及第二有效字符"b"字符為界限,在第一有效字符"a" 字符以及第二有效字符"b,,字符之間具有通配符為"* ** *,,。
通配符處理模塊20會再次進行通配符處理,統(tǒng)計第一通配符"?"字符 的數(shù)目為3,并將第一通配符的數(shù)目為3記錄于第一個第一通配符之后,并 保存第一個第一通配符,其余的第一通配符將消除;保存第一個第二通配符,其余的第二通配符將消除,同時將第一通配符以及第一通配符的數(shù)目放置于 第二通配符之前,重新組合通配符為"?3*"。
接下來,通配符處理模塊20找出的第三有效字符為"t"字符,以第二 有效字符"b,,字符以及第三有效字符"t,,字符為界限,在第一有效字符"a" 字符以及第二有效字符"b"字符之間具有通配符為"* *,,。
通配符處理模塊20會再次進行通配符處理,統(tǒng)計第一通配符"?"字符 的數(shù)目為2,并將第一通配符的數(shù)目為2記錄于第一個第一通配符之后,并 保存第一個第一通配符,其余的第一通配符將消除;保存第一個第二通配符, 其余的第二通配符將消除,同時將第 一通配符以及第 一通配符的數(shù)目放置于 第二通配符之前,重新組合通配符為"?2*"。
接下來,通配符處理模塊20找出的第三有效字符為"t"字符,以有效 字符"t"字符為界限之后具有通配符為"** "。
通配符處理模塊20會再次進行通配符處理,統(tǒng)計第一通配符"?,,字符 的數(shù)目為3,并將第一通配符的數(shù)目為3記錄于第一個第一通配符之后,并 保存第一個第一通配符,其余的第一通配符將消除;保存第一個第二通配符, 其余的第二通配符將消除,同時將第一通配符以及第一通配符的數(shù)目放置于 第二通配符之前,重新組合通配符為"?3*"。
接著,通配符處理模塊20處理完第 一 查詢字詞 " *a* ** *b* *t** ,,中所有的通配符后,將處理的通配符分別為 " 2*" 、 "?3*" 、 "?2*"及"?3*",并且將第一有效字符"a,,、第二
有效字符"b,,及第三有效字符"t"重新組合為第二查詢字詞 " 2*a 3*b 2*t 3*,,。
最后,通配符處理模塊20會計算第二查詢字詞的最小字符數(shù)量,即除 去第二通配符后的有效字符以及第一通配符的字符數(shù)量,因此,依據(jù)第二查 詢字詞為"?2*a 3*b 2*t 3*,,通配符處理模塊20所計算最小字符數(shù)量有 效字符數(shù)量為3,第一通配符的字符數(shù)量為10,第二查詢字詞為 " 2*a 3*b 2*t 3*,,的最小字符數(shù)量為13。
接下來,請參考圖3所示,并同時參考圖1以及圖2,圖3為本發(fā)明字典的索引表生成示意圖。
當(dāng)?shù)诙樵冏衷~產(chǎn)生后,索引范圍模塊30,以第二查詢字詞為基準(zhǔn)于 索引表中找出的索引值,其最大索引值及最小索引值為索引范圍(步驟300)。
上述的索引表為字典的英文字詞61由英文字母順序依序進行排序,并 依序給予索引值62并生成索引表63。
同樣地,我們以使用者輸入"a* ** *b,,當(dāng)作舉例,說明索引范圍模 塊30如何找出索引范圍。
索引范圍模塊30所使用的檢索方法可以為二分檢索法,由于索引值62 是連續(xù)存儲的,每個索引值62指向一個英文字詞61,這樣一來使用二分才企 索法檢索會提高檢索速度,例如若在一個112467個英文字詞的字典中查 找一個固定英文字詞,只需要比較17次(217 = 131072 > 112467),即可 以找出對應(yīng)的英文字詞。
才艮據(jù)第二查詢字詞為"a 3*b",由于第二查詢字詞中的第一字符"a" 字符為有效字符,因此,索引范圍模塊30會取出第一次出現(xiàn)通配符之前的 有效字符,第二查詢字詞"a 3*b"第一次出現(xiàn)的通配符為第一通配符,取 出第一次出現(xiàn)通配符之前的有效字符即為"a"字符。
接著,會將索引范圍模塊30取出第一次出現(xiàn)通配符之前的有效字符即 為"a"字符,進行二分檢索法找出的索引值62為"0",以及將有效字符 為"a"字符之后加入最大字符(最大字符為"\Oxff,)再次進行二分檢索 法找出的索引值62為"4525",所得到的索引值62分別為"0"以及"4525" 即為索引范圍。
以另外一個例子來看,當(dāng)使用者輸入"* ** *b,,時,根據(jù)通配符處理 -漠塊20所處理出來的結(jié)果第二查詢字詞為"?3*b,,,由于第二查詢字詞中 的第一字符" "為通配符,因此,索引范圍模塊30會直接將檢索范圍定為 整個索引表63。
當(dāng)找出索引范圍后,匹配模塊40,依據(jù)索引范圍模塊30所找出的索引 范圍,逐一進行索引值62對應(yīng)的英文字詞61與第二查詢字詞進行匹配,將 符合匹配的索引值62記錄至查詢結(jié)果索引表中(步驟400)。逐一進行索引值62對應(yīng)的英文字詞61與第二查詢字詞進行匹配,匹配 模塊40的匹配過程如下列步驟。
首先,匹配;f莫塊4(H殳定英文字詞61匹配位置及第二查詢字詞匹配^f立置 為起始匹配位置,即為將英文字詞61的匹配位置設(shè)置為該英文字詞61的起 始位置,將第二查詢字詞的匹配位置設(shè)置為該第二查詢字詞的起始位置。
接下來,由于第二查詢字詞具有"第一通配符"、"第二通配符"以及 "有效字符"三種字符,因此,以下將針對"第一通配符"、"第二通配符,, 以及"有效字符,,分別進行說明,首先會說明,當(dāng)?shù)诙樵冏衷~匹配位置的 字符為第一通配符時,匹配模塊40的處理情況;接著會說明,當(dāng)?shù)诙樵?字詞匹配位置的字符為第二通配符時匹配模塊40的處理情況;最后會說明, 當(dāng)該第二查詢字詞匹配位置的字符為所述有效字符時,匹配模塊40的處理 情況。
當(dāng)?shù)诙樵冏衷~匹配位置的字符為第一通配符時,英文字詞61匹配位 置位移第一通配符的數(shù)目及第二查詢字詞匹配位置位移兩個字符,若英文字 詞61剩余字符少于第二查詢字詞剩余字符,則英文字詞61不匹配,若第二 查詢字詞沒有需要匹配的字符時,則匹配成功。
當(dāng)?shù)诙樵冏衷~匹配位置的字符為第二通配符時,取出第二通配符后的 有效字符至下一個第一通配符為止,并且從英文字詞61匹配位置開始比對 所取出的有效字符,若比對英文字詞61匹配位置與取出的有效字符失敗, 則英文字詞61與第二查詢字詞不匹配;若比對英文字詞61匹配位置與取出 的有效字符成功,則將英文字詞61匹配位置位移有效字符的數(shù)目及第二查 詢字詞匹配位置位移有效字符的數(shù)目,此時若英文字詞61剩余字符少于該 第二查詢字詞剩余字符,則英文字詞61不匹配,若第二查詢字詞沒有需要 匹配的字符時,則匹配成功。
當(dāng)該第二查詢字詞匹配位置的字符為所述有效字符時,英文字詞61匹 配位置的字符及該第二查詢字詞匹配位置的字符是否相同,若不同,英文字 詞61不匹配;否則將英文字詞61匹配位置及該第二查詢字詞匹配位置位移 至下一個匹配位置,若英文字詞61剩余字符少于該第二查詢字詞剩余字符, 則英文字詞61不匹配,若該第二查詢字詞沒有需要匹配的字符時,則匹配成功。
上述為匹配模塊40的匹配過程,以下將以2個例子分別說明匹配模塊 40的匹配過程,當(dāng)使用者輸入為"a* ** *b"以及進行匹配的英文字詞61 為"alb"為匹配失敗的舉例;當(dāng)使用者輸入為"a* ** *b"以及進行匹配 的英文字詞61為"acerb"為匹配成功的舉例。
以下說明匹配失敗的舉例。首先,匹配模塊40會設(shè)定英文字詞61 "alb" 匹配位置為"a"字符及第二查詢字詞"a 3*b"匹配位置為"a"字符為起 始匹配位置。
接著,由于第二查詢字詞"a 3*b"匹配位置為"a"字符為有效字符, 匹配模塊40會檢查英文字詞61匹配位置的字符為"a"字符及該第二查詢 字詞匹配位置的字符為"a"字符是否相同,此時檢查結(jié)果是相同的。
因此,將英文字詞61匹配位置將從"a"字符位移至'T,字符,同時 第二查詢字詞匹配位置將從"a"字符位移至"?,,字符。
此時,英文字詞61剩余字符數(shù)目為2,由于第二查詢字詞最小字符數(shù) 目為"5",因此,第二查詢字詞剩余字符數(shù)目為"4";由于英文字詞61 剩余字符數(shù)目為"2"少于第二查詢字詞剩余字符數(shù)目為"4",因此,英文 字詞61 "alb"匹配結(jié)果為失敗。
以下說明匹配成功的舉例。首先,匹配模塊40會設(shè)定英文字詞61"acerb" 匹配位置為"a"字符及第二查詢字詞"a 3*b,,匹配位置為"a,,字符為起 始匹配位置。
接著,由于第二查詢字詞"a 3*b,,匹配位置為"a"字符為有效字符, 匹配模塊40會檢查英文字詞61匹配位置的字符為"a,,字符及該第二查詢 字詞匹配位置的字符為"a"字符是否相同,此時;^查結(jié)果是相同的;因此, 將英文字詞61匹配位置將從"a"字符位移至"c"字符,同時第二查詢字 詞匹配位置將從"a"字符位移至"?,,字符。
此時,英文字詞61剩余字符數(shù)目為"4",由于第二查詢字詞最小字符 數(shù)目為"5",因此,第二查詢字詞剩余字符數(shù)目為"4";由于英文字詞 61剩余字符數(shù)目為"4",不少于第二查詢字詞剩余字符數(shù)目為"4",且第二查詢字詞尚有需要匹配的字符,會進入,下一次的匹配過程。
由于第二查詢字詞"a 3*b"的匹配位置位移至"?"字符為第一通配符, 匹配模塊40會將英文字詞61匹配位置位移第一通配符的數(shù)目及第二查詢字 詞匹配位置位移兩個字符,因此,英文字詞61匹配位置將/人"c"字符位移 三個字符至"b"字符,同時,第二查詢字詞匹配位置將從"?,,字符位移二 個字符至"*"字符。
此時,英文字詞61剩余字符數(shù)目為"1",由于第二查詢字詞最小字符 數(shù)目為"5",因此,第二查詢字詞剩余字符數(shù)目為"1";由于英文字詞 61剩余字符數(shù)目為"1"不少于第二查詢字詞剩余字符數(shù)目為"1",且第 二查詢字詞尚有需要匹配的字符,會進入,下一次的匹配過程。
由于第二查詢字詞"a 3*b"的匹配位置位移至"*"字符為第二通配符, 匹配模塊40會取出第二通配符后的有效字符至下一個第一通配符為止,并 且從英文字詞61匹配位置開始比對所取出的有效字符,若比對英文字詞61 匹配位置與取出的有效字符失敗,則英文字詞61與第二查詢字詞不匹配; 若比對英文字詞61匹配位置與取出的有效字符成功,則將英文字詞61匹配 位置位移有效字符的數(shù)目及第二查詢字詞匹配位置位移有效字符的數(shù)目,因 此,所取出的有效字符為"b"字符,以及有效字符數(shù)目為"1",英文字詞 61匹配位置為"b,,字符,比對英文字詞61匹配位置為"b,,字符與取出的 有效字符為"b"字符的結(jié)果是成功的,因此英文字詞61匹配位置將位移一 個字符,及第二查詢字詞匹配位置位移一個字符。
此時,英文字詞61剩余字符數(shù)目為"0",由于第二查詢字詞最小字符 數(shù)目為"5",因此,第二查詢字詞剩余字符數(shù)目為"0";由于英文字詞 61剩余字符數(shù)目為"0"不少于第二查詢字詞剩余字符數(shù)目為"0",且第 二查詢字詞沒有需要匹配的字符,匹配成功。
英文字詞61 "acerb"對應(yīng)的索引值62為"859",匹配模塊40會將符 合匹配的英文字詞61的索引值62為"859"記錄至查詢結(jié)果索引表中。
接著,進入下一個英文字詞61的匹配過程,直到完成整個索引范圍匹 配過程,將所有匹配成功的英文字詞61的索引值62記錄至查詢結(jié)果索引表 中,以完成查詢結(jié)果索引表。當(dāng)完成查詢結(jié)果索引表后,顯示模塊50,通過查詢結(jié)果索引表中的索 引值62,找出與索引值62對應(yīng)的英文字詞61并顯示(步驟500)。除此之 外,與索引值62對應(yīng)的英文字詞61可以利用對話窗口顯示英文字詞61, 并且點選對話窗口中的英文字詞61,即可以顯示英文字詞61的解釋。
英文字詞由英文字母順序依序進行排序,并依序給予索引值并生成索引表, 當(dāng)使用者輸入具有通配符的查詢字詞時,以至少一個有效字符為界限,將通 配符進行分類整理,再找出索引范圍,即可以逐一比對索引范圍中的英文字 詞與查詢字詞,可以精確的找出符合通配符的英文字詞的技術(shù)方案,通過此 一技術(shù)方案可以來解決現(xiàn)有技術(shù)所存在的問題,進而達到使用通配符精確查 詢出英文字詞技術(shù)效果。
雖然本發(fā)明所公開的實施方式如上,但所述的內(nèi)容并非用以直接限定本 發(fā)明的專利保護范圍。任何本發(fā)明所屬技術(shù)領(lǐng)域中具有通常知識者,在不脫 離本發(fā)明所提供的精神和范圍的前提下,可以在實施的形式上及細節(jié)上作出 改變。本發(fā)明的專利保護范圍,仍須以權(quán)利要求書所要求保護的范圍為準(zhǔn)。
權(quán)利要求
1、一種通配符查詢字典字詞系統(tǒng),應(yīng)用于一字典,該字典的英文字詞由英文字母順序依序進行排序,并依序給予一索引值并生成一索引表,該系統(tǒng)包含一接收模塊,用以接收一第一查詢字詞,該第一查詢字詞包含至少一通配符;一通配符處理模塊,以至少一有效字符為界限,將該第一查詢字詞中所述通配符依據(jù)所包含的一第一通配符及一第二通配符進行分類并統(tǒng)計數(shù)目,將該第一查詢字詞重新組合為一第二查詢字詞,并計算該第二查詢字詞的最小字符數(shù)量;一索引范圍模塊,以所述第二查詢字詞為基準(zhǔn)于所述索引表中找出的所述索引值,其最大索引值及最小索引值為一索引范圍;一匹配模塊,依據(jù)所述索引范圍,進行所述索引值對應(yīng)的英文字詞與所述第二查詢字詞進行匹配,將符合匹配的所述索引值記錄至一查詢結(jié)果索引表中;及一顯示模塊,通過所述查詢結(jié)果索引表中的所述索引值,找出對應(yīng)的英文字詞并顯示。
2、 如權(quán)利要求1所述的通配符查詢字典字詞系統(tǒng),其中所述有效字符 為英文字母字符。
3、 如權(quán)利要求1所述的通配符查詢字典字詞系統(tǒng),其中所述第一通配 符代表任意一個英文字母字符,并且該第一通配符的代表符號為"?,,,以 及所述第二通配符代表任意復(fù)數(shù)個英文字母字符,并且該第二通配符的代表 符號為。
4、 如權(quán)利要求1所述的通配符查詢字典字詞系統(tǒng),其中所述通配符處 理模塊將所述第一通配符的數(shù)目記錄于該第一通配符之后,并保存一個該第 一通配符,以及保存一個所述第二通配符。
5、 如權(quán)利要求1所述的通配符查詢字典字詞系統(tǒng),其中所述查詢索引 范圍模塊使用二分檢索法找出該索引范圍。
6、 如權(quán)利要求5所述的通配符查詢字典字詞系統(tǒng),其中所述第二查詢 字詞中的第一字符為通配符時,所述索引范圍即為整個所述索引表。
7、 如權(quán)利要求5所述的通配符查詢字典字詞系統(tǒng),其中所述第二查詢 字詞中的第一字符為所述有效字符時,取出第一次出現(xiàn)所述通配符之前的所 述有效字符,將所述有效字符及所述有效字符之后加入一最大字符分別進行 二分4全索法,得到的兩個索引值即為所述索引范圍。
8、 如權(quán)利要求7所述的通配符查詢字典字詞系統(tǒng),其中所述最大字符 為"\0xff,。
9、 如權(quán)利要求7所述的通配符查詢字典字詞系統(tǒng),其中所述匹配才莫塊 的匹配過禾呈如下設(shè)定英文字詞匹配位置及所述第二查詢字詞匹配位置為起始匹配位置;當(dāng)所述第二查詢字詞匹配位置的字符為所述第一通配符時,英文字詞匹 配位置位移所述第一通配符的數(shù)目及所述第二查詢字詞匹配位置位移兩個 字符,若英文字詞剩余字符少于所述第二查詢字詞剩余字符,則英文字詞不 匹配,若所述第二查詢字詞沒有需要匹配的字符時,則匹配成功;當(dāng)所述第二查詢字詞匹配位置的字符為所述第二通配符時,取出所述第 二通配符后的所述有效字符至下一個第一通配符為止,并且從英文字詞匹配 位置開始比對所取出的有效字符,若比對英文字詞匹配位置與取出的有效字 符失敗,則英文單詞與第二查詢字詞不匹配,若比對英文字詞匹配位置與取^ 出的有效字符成功,則將英文字詞匹配位置位移所述有效字符的數(shù)目及該第 二查詢字詞匹配位置位移所述有效字符的數(shù)目,此時若英文字詞剩余字符少 于所述第二查詢字詞剩余字符,則英文字詞不匹配,若所述第二查詢字詞沒 有需要匹配的字符時,則匹配成功;及當(dāng)所述第二查詢字詞匹配位置的字符為所述有效字符時,英文字詞匹配 位置的字符及所述第二查詢字詞匹配位置的字符是否相同,若不同,英文字詞不匹配;否則將英文字詞匹配位置及所述第二查詢字詞匹配位置位移至下 一個匹配位置,若英文字詞剩余字符少于所述第二查詢字詞剩余字符,則英 文字詞不匹配,若所述第二查詢字詞沒有需要匹配的字符時,則匹配成功。
10、 如權(quán)利要求1所述的通配符查詢字典字詞系統(tǒng),其中所述顯示^t塊 進一步包含以一對話窗口顯示英文字詞,點選該對話窗口中的英文字詞,即 可以顯示該英文字詞的解釋。
11、 如權(quán)利要求1所述的通配符查詢字典字詞系統(tǒng),其中所述通配符處 理模塊進一步包含將所述第一通配符放置于所述第二通配符之前。
12、 一種通配符查詢字典字詞方法,應(yīng)用于一字典,該字典的英文字詞 由英文字母順序依序進行排序,并依序給予一索引值并生成一索引表,該方 法包含下列步驟4妄收一第一查詢字詞,該第一查詢字詞包含至少一通配符;以至少一有效字符為界限,將所述第一查詢字詞中所述通配符依據(jù)所包 含的一第一通配符及一第二通配符進行分類并統(tǒng)計數(shù)目,將所述第一查詢字 詞重新組合為一第二查詢字詞,并計算該第二查詢字詞的最小字符數(shù)量;以所述第二查詢字詞為基準(zhǔn)于所述索引表中找出的所述索引值,其最大 索引值及最小索引值為一索引范圍;依據(jù)所述索引范圍,進行所述索引值對應(yīng)的英文字詞與所述第二查詢字 詞進行匹配,將符合匹配的所述索引值記錄至一查詢結(jié)果索引表中;及通過所述查詢結(jié)果索引表中的所述索引值,找出對應(yīng)的英文字詞并顯示。
13、 如權(quán)利要求12所述的通配符查詢字典字詞方法,其中所述有效字 符為英文字母字符。
14、 如權(quán)利要求12所述的通配符查詢字典字詞方法,其中所述第一通 配符代表任意一個英文字母字符,并且該第一通配符的代表符號為"?", 以及所述第二通配符代表任意復(fù)數(shù)個英文字母字符,并且該第二通配符的代表符號為"*"。
15、 如權(quán)利要求12所述的通配符查詢字典字詞方法,其中重新組合為 一第二查詢字詞的步驟為將所述第一通配符的數(shù)目記錄于該第一通配符之 后,并保存一個所述第一通配符,以及保存一個所述第二通配符。
16、 如權(quán)利要求12所述的通配符查詢字典字詞方法,其中找出的所述 索引值的步驟為使用二分檢索法找出該索引范圍。
17、 如權(quán)利要求16所述的通配符查詢字典字詞方法,其中所述第二查 詢字詞中的第一字符為通配符時,所述索引范圍即為整個所述索引表。
18、 如權(quán)利要求16所述的通配符查詢字典字詞方法,其中所述第二查 詢字詞中的第一字符為所述有效字符時,取出第一次出現(xiàn)該通配符之前的所 述有效字符,將所述有效字符及所述有效字符之后加入一最大字符分別進行 二分檢索法,得到的兩個索引值即為所述索引范圍。
19、 如權(quán)利要求18所述的通配符查詢字典字詞方法,其中所述最大字 符為"\0xff,。
20、 如權(quán)利要求12所述的通配符查詢字典字詞方法,其中逐一進行所 述索引值對應(yīng)的英文字詞與所述第二查詢字詞進行匹配的步驟,進一步包含 下列步驟設(shè)定英文字詞匹配位置及所述第二查詢字詞匹配位置為起始匹配位置; 當(dāng)所述第二查詢字詞匹配位置的字符為所述第一通配符時,英文字詞匹 配位置位移所述第一通配符的數(shù)目及所述第二查詢字詞匹配位置位移兩個 字符,若英文字詞剩余字符少于所述第二查詢字詞剩余字符,則英文字詞不 匹配,若所述第二查詢字詞沒有需要匹配的字符時,則匹配成功;當(dāng)所述第二查詢字詞匹配位置的字符為所述第二通配符時,取出所述第 二通配符后的所述有效字符至下一個所述第一通配符為止,并且從英文字詞 匹配位置開始比對所取出的有效字符,若比對英文字詞匹配位置與取出的有 效字符失敗,則英文單詞與第二查詢字詞不匹配,若比對英文字詞匹配位置與取出的有效字符成功,則將英文字詞匹配位置位移所述有效字符的數(shù)目及 所述第二查詢字詞匹配位置位移所述有效字符的數(shù)目,此時若英文字詞剩余字符少于所述第二查詢字詞剩余字符,則英文字詞不匹配,若所述第二查詢字詞沒有需要匹配的字符時,則匹配成功;及當(dāng)所述第二查詢字詞匹配位置的字符為所述有效字符時,英文字詞匹配 位置的字符及所述第二查詢字詞匹配位置的字符是否相同,若不同,英文字 詞不匹S己;否則將英文字詞匹配位置及所述第二查詢字詞匹配位置位移至下 一個匹配位置,若英文字詞剩余字符少于所述第二查詢字詞剩余字符,則英 文字詞不匹配,若所述第二查詢字詞沒有需要匹配的字符時,則匹配成功。
21、 如權(quán)利要求12所述的通配符查詢字典字詞方法,其中找出對應(yīng)的 英文字詞并顯示的步驟進一步包含以一對話窗口顯示英文字詞,點選該對話 窗口中的英文字詞,即可以顯示該英文字詞的解釋。
22、 如權(quán)利要求12所述的通配符查詢字典字詞方法,其中將所述第一 查詢字詞重新組合為一第二查詢字詞的步驟進一步包含將所述第一通配符 放置于所述第二通配符之前的步驟。
全文摘要
一種通配符查詢字典字詞系統(tǒng)及其方法,其通過使用者輸入具有通配符的查詢字詞時,將通配符進行分類整理,再找出索引范圍,即可以逐一比對索引范圍中的英文字詞與查詢字詞,可以精確的找出符合通配符的英文字詞的技術(shù)方案,可以解決現(xiàn)有技術(shù)中所存在使用通配符查詢英漢字典字詞不精確的問題,以此可以達到使用通配符精確查詢出英文字詞的技術(shù)效果。
文檔編號G06F17/30GK101452458SQ20071019550
公開日2009年6月10日 申請日期2007年11月30日 優(yōu)先權(quán)日2007年11月30日
發(fā)明者程新軍, 邱全成 申請人:英業(yè)達股份有限公司