專利名稱:拼寫檢查功能以及相關(guān)的手持電子設(shè)備的制作方法
拼寫檢査功能以及相關(guān)的手持電子設(shè)備技術(shù)領(lǐng)域該披露和要求的概念大體上涉及手持電子設(shè)備,更為特別地,涉 及手持電子設(shè)備上的拼寫檢査功能。
背景技術(shù):
已知眾多類型的手持電子設(shè)備。這樣的手持電子設(shè)備的例子包括,例如,個(gè)人數(shù)字助理(PDA)、手持電腦、雙向?qū)ず魴C(jī)、移動(dòng)電話等。 許多手持電子設(shè)備也具有無(wú)線通信能力的特征,盡管許多這樣的手持 電子設(shè)備是單機(jī)設(shè)備,其無(wú)需和其它設(shè)備通信即可運(yùn)行。拼寫檢查功能尤其難以在手持電子設(shè)備上實(shí)現(xiàn)。由于存儲(chǔ)容量的 限制和處理能力的限制,拼寫檢查功能的實(shí)現(xiàn)通常非常有限或者根本 沒(méi)有實(shí)現(xiàn)。以前的在手持電子設(shè)備上實(shí)現(xiàn)拼寫檢查技術(shù)的努力并非沒(méi) 有限制,由于它們時(shí)常地產(chǎn)生不完善的和/或不適當(dāng)?shù)慕Y(jié)果,這些結(jié)果 時(shí)常地使發(fā)生所生產(chǎn)的設(shè)備難以使用。因此,需要提供一種改進(jìn)的手 持電子設(shè)備和在其上實(shí)現(xiàn)的改進(jìn)的拼寫檢査功能。
該披露和要求的概念的完全理解可以通過(guò)結(jié)合附圖閱讀以下的描述而獲得,在附圖中-圖1是根據(jù)披露和要求的概念的示例的手持電子設(shè)備的前視圖,基于該概念執(zhí)行根據(jù)披露和要求的概念的改進(jìn)方法; 圖2是圖1的手持電子設(shè)備的示意性的描述; 圖3是圖1的手持電子設(shè)備的存儲(chǔ)器的示意性的描述; 圖4是描述在圖1的改進(jìn)的手持電子設(shè)備上實(shí)現(xiàn)的根據(jù)披露和要求概念的拼寫檢查功能的某些方面的示例流程圖;圖5是描述當(dāng)?shù)谝粦?yīng)用程序在手持電子設(shè)備上激活時(shí),由改進(jìn)的拼寫檢査功能提供的用戶界面的某些方面的示例屏幕截圖-,圖6是描述當(dāng)?shù)谝粦?yīng)用程序在手持電子設(shè)備上激活時(shí),由改進(jìn)的拼寫檢查功能提供的用戶界面的某些方面的另一個(gè)屏幕截圖;圖6A是描述當(dāng)?shù)诙?yīng)用程序在手持電子設(shè)備上激活時(shí),由改進(jìn)的拼寫檢查功能提供的用戶界面的某些方面的另一個(gè)屏幕截圖;圖7A和圖7B描述示出了關(guān)于文本輸入(entry)的建議拼寫檢查解釋的識(shí)別的拼寫檢查功能的某些方面的示例流程圖;圖8描述關(guān)于針對(duì)語(yǔ)言數(shù)據(jù)在存儲(chǔ)器中搜索的數(shù)據(jù)源的拼寫檢査功能的其它方面;圖9描述關(guān)于向某些建議拼寫檢查解釋應(yīng)用優(yōu)先選擇(preference)的拼寫檢查功能的其它方面;圖10描述關(guān)于改變文本輸入的后綴部分的一種方式的拼寫檢査功能的其它方面;圖IOA描述關(guān)于改變文本輸入的后綴部分的另一種方式的拼寫檢查功能的其它方面;以及圖11描述關(guān)于向由特定拼寫檢査算法產(chǎn)生的建議拼寫檢查解釋 應(yīng)用優(yōu)先選擇的拼寫檢査功能的其它方面。在整個(gè)說(shuō)明書中,類似的數(shù)字代表類似的元件。
具體實(shí)施方式
根據(jù)披露和要求的概念的改進(jìn)的手持電子設(shè)備4大體示出在圖1 中,并且示意性地在圖2中進(jìn)行了描述。改進(jìn)的手持電子設(shè)備4包括 外殼6,在外殼6上具有輸入裝置8、輸出裝置12和處理器裝置16。 輸入裝置8提供輸入到處理器裝置16。處理器裝置16提供輸出信號(hào) 到輸出裝置12。輸入裝置8包括鍵盤20和軌跡球24。這里描述的實(shí)施例中的鍵 盤20包括多個(gè)鍵26,每個(gè)鍵26都可驅(qū)動(dòng)以提供輸入到處理器裝置16。 軌跡球24在所有方向上可自由旋轉(zhuǎn),以提供所有方向上的導(dǎo)航輸入和 其它輸入到處理器裝置16,并且另外地,在通常朝向手持電子設(shè)備的 方向上是可平移的,以提供其它輸入,例如選擇輸入。鍵26和指輪24作為輸入構(gòu)件,其可驅(qū)動(dòng)以提供輸入到處理器裝置16。鍵26包括多個(gè)鍵26,鍵26分配有例如拉丁字母和/或阿拉伯?dāng)?shù)字 的字符。鍵26進(jìn)一步包括〈MENU〉鍵52、 〈ESCAPE〉鍵56、和 〈ENTER〉鍵60。示例輸出裝置12包括顯示器32。其它沒(méi)有在此特別描述的輸入構(gòu)件的例子包括例如鼠標(biāo)或滾輪, 用于提供導(dǎo)航輸入,諸如可以通過(guò)顯示器32上光標(biāo)的移動(dòng)反映的導(dǎo)航 輸入,以及例如選擇輸入的其它輸入。其它示例輸入構(gòu)件還可以包括 觸摸敏感顯示器、用于在顯示菜單選項(xiàng)的觸摸敏感顯示器上進(jìn)行菜單 輸入選擇的記手寫筆和/或圖形用戶界面(GUI)的軟按鈕、位于手持 電子設(shè)備4表面上的硬按鈕等。其它輸出設(shè)備的例子可以包括觸摸敏 感顯示器、音頻揚(yáng)聲器等。處理器裝置16包括處理器36和存儲(chǔ)器40。處理器36可以是例 如且不限于與存儲(chǔ)器40接口連接的微處理器(pP)。存儲(chǔ)器40可以是 多種類型中的任何一種或多種的內(nèi)和/或外存儲(chǔ)介質(zhì),例如不限于 RAM、 ROM、 EPROM(s)、 FLASH等,提供存儲(chǔ)寄存器以用于數(shù)據(jù)存 儲(chǔ),例如,以計(jì)算機(jī)的內(nèi)存區(qū)的方式,并且可以是易失性存儲(chǔ)器和非 易失性存儲(chǔ)器。存儲(chǔ)器40中存儲(chǔ)了許多可以在處理器36上執(zhí)行的例 程44。如這里所使用的,表述"許多"及其變形應(yīng)該廣泛地指非零數(shù)量, 包括數(shù)量一。程序44包括拼寫檢査功能44和其它功能。圖3是存儲(chǔ)器40的示意性描述??梢钥闯?,存儲(chǔ)器40包括一般 詞(generic word)列表104、新詞數(shù)據(jù)庫(kù)108和地址簿112以及其它 數(shù)據(jù)源116,該其它數(shù)據(jù)源116在這里統(tǒng)稱語(yǔ)言數(shù)據(jù)源。 一般詞列表 104中存儲(chǔ)有多個(gè)語(yǔ)言對(duì)象120和多個(gè)頻率對(duì)象124。在當(dāng)前的示例實(shí) 施例中,語(yǔ)言對(duì)象120具有詞的形式。每個(gè)語(yǔ)言對(duì)象120和具有指示 語(yǔ)言對(duì)象120在語(yǔ)言中的相對(duì)頻率的頻率值的頻率對(duì)象124相關(guān)聯(lián)。 在當(dāng)前的實(shí)施例中,示例描述的語(yǔ)言是英語(yǔ), 一般詞列表104具有大 概35,000個(gè)語(yǔ)言對(duì)象120。 一般詞列表104是完全不受侵犯的,意味 著存儲(chǔ)于其中的數(shù)據(jù)是靜態(tài)的且不可變更的。 一般詞列表104的靜態(tài) 性質(zhì)便于在其中進(jìn)行搜索。新詞數(shù)據(jù)庫(kù)108中同樣地存儲(chǔ)有多個(gè)語(yǔ)言對(duì)象120和多個(gè)相關(guān)聯(lián)的頻率對(duì)象124。該語(yǔ)言對(duì)象120表示拼寫檢查功能44"學(xué)習(xí)"的新詞。 例如,新詞數(shù)據(jù)庫(kù)108中的新的語(yǔ)言對(duì)象120可以是尚未作為一般詞 列表104中的語(yǔ)言對(duì)象120己經(jīng)存在的詞,而是被用戶在手持電子設(shè) 備4上輸入一次或多次的詞。 一旦在新詞數(shù)據(jù)庫(kù)108中存儲(chǔ)了新的語(yǔ) 言對(duì)象120,系統(tǒng)典型地也存儲(chǔ)具有相對(duì)較大頻率值的相關(guān)聯(lián)的頻率 對(duì)象124,所述相對(duì)較大頻率值是在可適用的頻率范圍的前1/3或1/4 的頻率值。在當(dāng)前的實(shí)施例中,頻率范圍是0 — 65,535,即,可以以兩 字節(jié)數(shù)據(jù)存儲(chǔ)的量。地址簿112是其中存儲(chǔ)有語(yǔ)言對(duì)象120和相關(guān)聯(lián)的頻率對(duì)象124 的數(shù)據(jù)源。其它數(shù)據(jù)源116是可選的,并可涉及其中存儲(chǔ)有語(yǔ)言對(duì)象 120和相關(guān)聯(lián)的頻率對(duì)象124的其它語(yǔ)言數(shù)據(jù)源中的任何一個(gè)或多個(gè)。 新詞數(shù)據(jù)庫(kù)108、地址簿112和其它數(shù)據(jù)源116具有動(dòng)態(tài)存儲(chǔ)性質(zhì), 這意味著它們是可以變更的。也就是說(shuō),數(shù)據(jù)可以被增加、改變、刪 除等。新詞數(shù)據(jù)庫(kù)108、地址簿112和其它數(shù)據(jù)源116通常在尺寸上 比一般詞列表104小的多。如以下將更為詳細(xì)闡明的,當(dāng)檢查輸入到 在手持電子設(shè)備4上執(zhí)行的多個(gè)應(yīng)用程序的任意一個(gè)中的各種文本輸 入的拼寫時(shí),存儲(chǔ)器40中的所有語(yǔ)言數(shù)據(jù)源,也就是一般詞列表104、 新詞數(shù)據(jù)庫(kù)108、地址簿112和其它數(shù)據(jù)源116被搜索以用于識(shí)別語(yǔ) 言結(jié)果,該語(yǔ)言結(jié)果也就是存儲(chǔ)于其中的語(yǔ)言對(duì)象120和相關(guān)聯(lián)的頻 率對(duì)象124。圖3描述了一示例的情況,其中語(yǔ)言數(shù)據(jù)源被存儲(chǔ)在位于手持電 子設(shè)備上的存儲(chǔ)器中,可以理解的是,任何一個(gè)或多個(gè)語(yǔ)言數(shù)據(jù)源可 以遠(yuǎn)離手持電子設(shè)備4而存儲(chǔ),這不脫離所披露和要求的概念。也就 是說(shuō),圖3并不限制當(dāng)前的概念,并且可以理解的是,任何一個(gè)或多 個(gè)語(yǔ)言數(shù)據(jù)源可供手持電子設(shè)備4使用而不必物理地存儲(chǔ)到其上。例 如, 一個(gè)或多個(gè)語(yǔ)言數(shù)據(jù)源可以被存儲(chǔ)到服務(wù)器上或可供手持電子設(shè) 備4使用的其它設(shè)備上。圖4總體上描述了拼寫檢查功能44的基本操作。具體地,當(dāng)拼寫 檢查功能44啟動(dòng)時(shí),在204首先確定給定的文本輸入是否拼錯(cuò)。如果 該文本輸入(也就是輸入的詞)在存儲(chǔ)器40中的任一語(yǔ)言數(shù)據(jù)源中都找不到,則確定拼錯(cuò)。如果可以在存儲(chǔ)器40中的語(yǔ)言數(shù)據(jù)源中識(shí)別與給定文本輸入相對(duì)應(yīng)的語(yǔ)言對(duì)象120,則處理返回到204以繼續(xù)確定 另一個(gè)文本輸入,如同在204 —樣,確定這樣的另一個(gè)文本輸入是否 拼錯(cuò)。另一方面,如果在204確定文本輸入拼錯(cuò),例如如果在存儲(chǔ)器 40中不能找到與該文本輸入相對(duì)應(yīng)的語(yǔ)言對(duì)象120,則關(guān)于該拼錯(cuò)的 文本輸入的拼寫校正功能啟動(dòng),如同在208 —祥。以下更為詳細(xì)地描 述拼寫校正功能。之后處理繼續(xù),如同在204 —樣,在此評(píng)估另一個(gè) 文本輸入的拼寫正確性。圖5大體上描述了當(dāng)手持電子設(shè)備4上的詞處理應(yīng)用程序激活時(shí), 由拼寫檢查功能44提供的拼寫檢查用戶界面300的一些方面。圖5描 述輸入到由手持電子設(shè)備4上激活的特定應(yīng)用程序提供的數(shù)據(jù)輸入域 306的多個(gè)文本輸入302。圖5進(jìn)一步描述了高亮顯示拼錯(cuò)的詞 "SPELLIN"的用戶界面300,如同在304 —樣。 一旦確定文本輸入 302"SPELLIN"拼錯(cuò),也就是,確定在存儲(chǔ)器40中找不到相對(duì)應(yīng)的語(yǔ) 言對(duì)象120,則拼寫檢査功能44識(shí)別拼錯(cuò)的文本輸入302"SPELLIN" 的多個(gè)建議拼寫檢查解釋312。建議拼寫檢查解釋312被輸出到顯示器32上的列表308中。最上 面的建議拼寫檢査解釋312被高亮顯示,如同在316—樣。<ENTER> 鍵60的驅(qū)動(dòng)將導(dǎo)致拼錯(cuò)的文本輸入302"SPELLIN"被替換為如同在 316—樣當(dāng)前被高亮顯示的建議拼寫檢查解釋312。之后,拼寫檢查功 能44繼續(xù)另一個(gè)文本輸入302的評(píng)估。另一方面,代替〈ENTER〉鍵60, 〈MENU〉鍵52的驅(qū)動(dòng)將導(dǎo)致拼 寫檢查功能44在菜單320中顯示多個(gè)可選的拼寫檢查選項(xiàng),如同在圖 6中通常描述的一樣。有利地,與建議拼寫檢查解釋312的列表308 同時(shí)輸出可選的拼寫檢查選項(xiàng)的示例菜單320??蛇x的拼寫檢查選項(xiàng) 包括例如〈GNORE ONCE>選項(xiàng)324、 <IGNORE ALL〉選項(xiàng)328、 <ADD TO DICTIONARY〉選項(xiàng)332、禾口〈CANCEL SPELL CHECK〉選 項(xiàng)336??梢钥闯?,<ADD TO DICTIONARY〉選項(xiàng)332當(dāng)前被高亮顯 示,如同在圖6中340 —樣,并且可通過(guò)〈ENTER〉鍵60的驅(qū)動(dòng)或通 常朝向手持電子設(shè)備4的軌跡球24的驅(qū)動(dòng)選擇該選項(xiàng)。有利地,菜單320中的許多可選的拼寫檢查選項(xiàng)可通過(guò)軌跡球24 的導(dǎo)航輸入而驅(qū)動(dòng),結(jié)合軌跡球24的驅(qū)動(dòng)以高亮顯示所需的拼寫檢查 選項(xiàng),如同在340 —樣,并且通過(guò)特定鍵26的驅(qū)動(dòng)也可被驅(qū)動(dòng)。例如, <IGNORE ONCE>選項(xiàng)324可以通過(guò)〈ESCAPE〉鍵56的按壓-釋放驅(qū) 動(dòng)被驅(qū)動(dòng)。CANCEL SPELL CHECK〉選項(xiàng)336可以通過(guò)〈ESCAPE〉鍵 56的按壓-保持驅(qū)動(dòng)被輸入。如同上面所提到的,<ADD TO DICTIONARY〉選項(xiàng)340可以通過(guò)〈ENTER〉鍵60的按壓一釋放驅(qū)動(dòng)被 驅(qū)動(dòng)。其它鍵的驅(qū)動(dòng)是顯而易見的。圖6A描述了當(dāng)不同的例程44 (例如地址簿應(yīng)用程序)在手持電 子設(shè)備4上激活時(shí),拼寫檢查功能44的操作。例如,用戶界面346描 述〈NAME〉數(shù)據(jù)輸入域350、 〈ADDRESS〉數(shù)據(jù)輸入域354 、和 〈COMMENTS〉數(shù)據(jù)輸入域358 。圖6A描述了拼錯(cuò)的文本輸入 "SMITG"362被高亮顯示,如同在366 —樣,并且拼寫檢查功能44輸 出拼錯(cuò)的文本輸入"SMITG"362的建議拼寫檢查解釋312的列表308。 拼寫檢査程序44在例如圖6A所示的地址簿應(yīng)用程序的任何數(shù)據(jù)輸入 域350、 354和358都是可運(yùn)行的。同樣地,拼寫檢査功能在圖5和圖 6的詞處理應(yīng)用程序的數(shù)據(jù)輸入域306中是可運(yùn)行的。從而可以看出, 有利地,拼寫檢査功能44在許多不同應(yīng)用程序的許多不同數(shù)據(jù)輸入域 中都是可以運(yùn)行的。當(dāng)建議拼寫檢查解釋312的列表308被輸出時(shí),如同圖5和圖6A 一樣,關(guān)于已經(jīng)被確定拼錯(cuò)的文本輸入的編輯對(duì)話被自動(dòng)打開。也就 是,除了選擇一個(gè)建議拼寫檢查解釋312來(lái)替換拼錯(cuò)的文本輸入或驅(qū) 動(dòng)〈MENU〉鍵52來(lái)獲得可選的拼寫檢查選項(xiàng)的菜單320之外,用戶還 可以僅僅驅(qū)動(dòng)分配有字符的一個(gè)或多個(gè)鍵26來(lái)添加字符,比方說(shuō),向 詞的末尾添加字符。軌跡球24向左滾動(dòng)或旋轉(zhuǎn)將使字符輸入指針向左 移動(dòng)到可輸入附加字符的位置。同樣地,有利地,拼寫檢査功能44不 需要用戶專門進(jìn)入編輯模式來(lái)打開拼錯(cuò)的文本輸入的編輯對(duì)話,而是 在拼寫檢査功能44確定文本輸入拼錯(cuò)時(shí)編輯對(duì)話就被自動(dòng)打開。如上關(guān)于圖4提到的,如果拼寫檢査功能44在204確定文本輸入 拼錯(cuò),處理繼續(xù)到208,在208,拼寫檢查功能44的拼寫校正功能啟動(dòng)。通常,披露和要求的概念的拼寫校正功能提供文本輸入要經(jīng)歷的 一系列有序拼寫檢查算法。 一旦例如通過(guò)拼寫檢查算法的處理,預(yù)定 數(shù)量的識(shí)別語(yǔ)言對(duì)象120被識(shí)別,則停止使該文本輸入經(jīng)歷其它的拼 寫檢査算法。然而,可以理解,可以采用不基于一系列拼寫檢查算法 的其它拼寫檢查方法學(xué),而不脫離本發(fā)明的概念。拼寫檢查算法以特定的順序依次排列,這意味著首先根據(jù)第一拼 寫檢查算法處理文本輸入,并且,如果被識(shí)別為文本輸入的建議拼寫 檢査解釋的語(yǔ)言對(duì)象120沒(méi)有達(dá)到預(yù)定的數(shù)量,則根據(jù)第二拼寫檢査 算法處理文本輸入。如果則根據(jù)第二拼寫檢查算法處理之后,被識(shí)別為建議拼寫檢查解釋的語(yǔ)言對(duì)象120仍然沒(méi)有達(dá)到預(yù)定的數(shù)量,則根據(jù)第三拼寫檢査算法處理文本輸入,如此等等。被依次有序排列的拼寫檢查算法可以進(jìn)一步被如下分組文本輸 入將首先經(jīng)歷涉及字符結(jié)構(gòu)的一個(gè)或多個(gè)拼寫檢査算法,在當(dāng)前的實(shí) 施例中,該拼寫檢查算法是涉及忽略大小寫和重音的拼寫檢査算法。如果被識(shí)別的語(yǔ)言對(duì)象120沒(méi)有達(dá)到預(yù)定的數(shù)量,之后,文本輸入經(jīng)歷涉及拼錯(cuò)的一個(gè)或多個(gè)拼寫檢查算法,在當(dāng)前的實(shí)施例中,該拼寫檢査算法是涉及語(yǔ)音替換的拼寫檢查算法。如果被識(shí)別的語(yǔ)言對(duì)象120 沒(méi)有達(dá)到預(yù)定的數(shù)量,之后,文本輸入經(jīng)歷涉及輸錯(cuò)(mistype)的一 個(gè)或多個(gè)拼寫檢查算法。在這一點(diǎn)上,"拼錯(cuò)"通常指的是用戶關(guān)于如 何拼寫一個(gè)特定詞的錯(cuò)誤,例如,用戶不正確地認(rèn)為詞their實(shí)際上被 拼寫為"thier"。相反,"輸錯(cuò)"通常指的是用戶敲錯(cuò)鍵,例如,如果用戶鍵入了并非所需的其它輸入。如果被識(shí)別的語(yǔ)言對(duì)象120沒(méi)有達(dá)到預(yù)定的數(shù)量,之后,文本輸入經(jīng)歷涉及特定附加規(guī)則的一個(gè)或多個(gè)拼寫檢查算法,該特定附加規(guī) 則通常是場(chǎng)合特定的附加規(guī)則。例如,在德語(yǔ)中有兩個(gè)已知的詞是 A:a/7/tow和pafeW。這兩個(gè)詞可以被合成一個(gè)表達(dá)式,但是為了這樣做, 一個(gè)s必須被附加到兩個(gè)詞之間,這樣得到了 b/ /to^/^/e"Z。其它類型的附加規(guī)則也是顯而易見的。如果被識(shí)別的語(yǔ)言對(duì)象120沒(méi)有達(dá)到預(yù)定的數(shù)量,之后,文本輸 入經(jīng)歷涉及變音位(metaphone)分析的一個(gè)或多個(gè)拼寫檢査算法。通常,變音位是通過(guò)聲音來(lái)索引詞的語(yǔ)音算法。變音位和語(yǔ)音規(guī)則都是 語(yǔ)言特定的。從而,變音位能夠使語(yǔ)言表達(dá)式以本質(zhì)上按照語(yǔ)音的標(biāo) 準(zhǔn)化方式被特征化。變音位的使用可以幫助克服某些拼錯(cuò)錯(cuò)誤。如果被識(shí)別的語(yǔ)言對(duì)象120仍舊沒(méi)有達(dá)到預(yù)定的數(shù)量,之后,文 本輸入經(jīng)歷涉及改變文本輸入后綴部分的拼寫檢査算法。如以下將詳 細(xì)描述的,可以選擇性地采用用于改變文本輸入后綴部分的修改算法。 同樣,可以在執(zhí)行前述的變音位分析之前執(zhí)行后綴改變的拼寫檢查算 法,這也不脫離披露的和要求的概念。也就是,盡管在算法序列內(nèi)的 任何時(shí)間執(zhí)行后綴改變的拼寫檢查算法都是可以的,但是典型地,它被最后執(zhí)行以作為一個(gè)退路(fallback)算法。然而,由于它們需要大 量處理功率,可能需要在執(zhí)行變音位分析算法之前執(zhí)行這樣的退路機(jī) 制。為了更為詳細(xì)地描述該過(guò)程,使給定的文本輸入(例如一串字符) 經(jīng)歷給定的拼寫檢查算法,這導(dǎo)致一表達(dá)式(即修改的文本輸入)的 產(chǎn)生。例如,該拼寫檢查算法可能關(guān)注于用語(yǔ)音替換取代給定的字符 串。這樣,當(dāng)文本輸入被該算法處理時(shí),所產(chǎn)生的"表達(dá)式"或修改的 文本輸入將成為該文本輸入的特征。例如,字符串"ph"可能按照發(fā)音 被替換為"f'和/或"gh"。然后查閱存儲(chǔ)器20中的語(yǔ)言源將以觀察是否 可以識(shí)別與并入了語(yǔ)音替換的文本輸入相對(duì)應(yīng)的任何語(yǔ)言對(duì)象120。然而,可以注意到,這樣的描述僅僅是概念上的,并且這樣被處 理或"產(chǎn)生的"字符串通常不單獨(dú)被搜索。而是,使文本輸入經(jīng)歷拼寫 檢查算法的結(jié)果可以多次產(chǎn)生"正規(guī)表達(dá)式(regular expression)",該 表達(dá)式是處理過(guò)的文本輸入的全局特征。例如,"正規(guī)表達(dá)式"可以包 括通配符字符,實(shí)際上,該通配符字符描述了根據(jù)特定拼寫檢查算法 的文本輸入的所有可能排列的結(jié)果的特征。該結(jié)果通常是可以針對(duì)"正 規(guī)表達(dá)式"執(zhí)行的單一搜索,結(jié)果節(jié)約了處理能力和效率。作為示例,如果用戶輸入〈OPxGHo〈ASxBN、例如可能拼寫 phan,根據(jù)示例的語(yǔ)音替換拼寫檢查算法的phan的處理將產(chǎn)生正規(guī)表 達(dá)式,該正規(guī)表達(dá)式例如被特征化為(fHphlghlHaleiley)n。 "ph"可以被 語(yǔ)音替換為"f'、 'V,、 "ph"、和"gh"中的任一個(gè),"a"可以被替換為"a"、"ei"、和"ey"中的任一個(gè)。"n"沒(méi)有任何語(yǔ)音等價(jià)物??梢詸z査一般詞 列表104、新詞數(shù)據(jù)庫(kù)108、地址簿112、和其它數(shù)據(jù)源116以觀察是 否有任何語(yǔ)言對(duì)象120可以被識(shí)別為與表達(dá)式(f]vlphlghlKaidley)n — 致。任何這樣的被識(shí)別的語(yǔ)言對(duì)象120可以被當(dāng)作原始文本輸入的建 議拼寫檢查解釋。在這樣的語(yǔ)言源搜索之后,如果被識(shí)別的語(yǔ)言對(duì)象 120的數(shù)量沒(méi)有達(dá)到預(yù)定的數(shù)量,例如,文本輸入phan之后將經(jīng)歷按 順序排列的下一個(gè)拼寫檢査算法,該算法將產(chǎn)生一不同的正規(guī)表達(dá)式 或其它被處理的字符串,之后該正規(guī)表達(dá)式或字符串將成為用于搜索 與其一致的語(yǔ)言對(duì)象120的語(yǔ)言數(shù)據(jù)源的一個(gè)或多個(gè)新搜索的對(duì)象。如上面所提到的,第一拼寫檢查算法是忽略大小寫和/或重音的算 法??梢躁P(guān)于包括在文本輸入中的大小寫和/或重音來(lái)執(zhí)行大小寫和/ 或重音的忽略,該文本輸入是搜索的對(duì)象和/或包括在被搜索的存儲(chǔ)語(yǔ) 言對(duì)象120中的對(duì)象。按順序的下一個(gè)拼寫檢查算法是前述的語(yǔ)音替換算法。在正規(guī)表 達(dá)式中,某些字符串被替換,以識(shí)別與文本輸入發(fā)音類似的語(yǔ)言對(duì)象 120。 一些示例的語(yǔ)音替換被列在表1中。表h示例的英語(yǔ)語(yǔ)音規(guī)則,其中,每一行的兩個(gè)字符串按照發(fā) 音是可互換的。a""eia,,"ey"ai""ie,,'air,,"ear"air,,"ere"air""are"are""ear"ars,,"eir"加s,,"air";cc,,"k";ch,,"te";ch,,"ti"ch""k,,ch""tu,,ch""s"ci,,"s,,ear""air"'sW"are":ear,,"ere"ear""ier";eau,,"0";ee,,'ei""a"'eir,,"are"'eir""ere"'ere""ear"'ere""air"'ere,,"eir"'ew,,"00"'ew,,"ue"'ew,,"u,,'ew,,"。,,'ew,,"ui".'ey,,"a""ph""f,"gh""ge,,"gg""j""gh,,"f,"「"igh,"i""ee"、""uy"<image>image see original document page 14</image>;tu,,"ch";u,,"ieu,,;u""oo"u,,"ew,,"oe,,;ue,,"ew,,;uff'"oughui,,"ew,,ui"'W,uy,,;w,,"qu"z,,"ss,,文本輸入中的每個(gè)串被用該串的所有語(yǔ)音等價(jià)物替換。如同在上 面的例子中描述的,如果存在多個(gè)語(yǔ)音等價(jià)物,有利地,有時(shí)采用正 規(guī)表達(dá)式。按順序的接下來(lái)的五個(gè)拼寫檢査算法落入"輸錯(cuò)"拼寫檢查算法的 組內(nèi)。第一個(gè)是遺漏字符插入算法。在文本輸入的每個(gè)字符后添加字 母表的每個(gè)字母,如同可以被以正規(guī)表達(dá)式特征化一樣。按照順序接下來(lái)的算法是字符交換算法,其中,文本輸入中的每對(duì)連續(xù)字符的字符被彼此交換。從而,文本輸入phan將導(dǎo)致字符串 hpan、 pahn和phna。之后這三個(gè)字符串將是語(yǔ)言數(shù)據(jù)源的分別搜索的 對(duì)象。按照順序接下來(lái)的算法是字符省略算法,其中,單獨(dú)地省略每個(gè) 字符。從而,文本輸入phan將導(dǎo)致字符串han、 pan、 phn和pha。之 后這四個(gè)字符串將是語(yǔ)言數(shù)據(jù)源的分別搜索的對(duì)象。按照順序接下來(lái)的算法將文本當(dāng)作兩個(gè)單獨(dú)的詞。例如,這可以 通過(guò)在相鄰的字母間插入〈SPACE〉來(lái)完成,或者,例如,通過(guò)簡(jiǎn)單地搜索文本輸入的第一部分和第二部分作為單獨(dú)的詞,也就是,作為單 獨(dú)的子輸入來(lái)完成。搜索文本輸入作為兩個(gè)單獨(dú)的詞的其它方式將是顯而易見的。按照順序接下來(lái)的算法以及最后的"輸錯(cuò)"算法是字符替換算法, 其中,每個(gè)字符被字母表中的其它字符分別替換??梢允刮谋据斎虢?jīng) 歷算法可以得到正規(guī)表達(dá)式。如以下將更為詳細(xì)地描述的,可以基于 文本輸入的替換字符和原始字符在鍵盤20上鄰近度,選擇性地向某些 被識(shí)別的語(yǔ)言對(duì)象120應(yīng)用優(yōu)先選擇。按照順序接下來(lái)的算法是涉及特定附加規(guī)則的拼寫檢查算法,附 加規(guī)則典型地是場(chǎng)合特定的。如上所述,在德語(yǔ)中,必須在兩個(gè)已知單詞h;^aw禾B pa&"f之間添加s以形成它們的組合,就是 /to^p^e"f 。其它類型的附加規(guī)則將是顯而易見的。接下來(lái)的規(guī)則與變音位分析有關(guān)。第一規(guī)則涉及變音位正規(guī)表達(dá) 式的產(chǎn)生,然后識(shí)別語(yǔ)言源中與變音位正規(guī)表達(dá)式一致的語(yǔ)言對(duì)象 120。以下將更為詳細(xì)地描述的四個(gè)另外的和可選的變音位相關(guān)拼寫檢 査算法涉及變音位操作。關(guān)于第一變音位相關(guān)拼寫檢查算法,可以注意到,通常,可以通 過(guò)從文本輸入中刪除所有元音并通過(guò)用標(biāo)準(zhǔn)變音位"鍵(key)"替代所 有發(fā)音相同的字符串來(lái)形成變音位正規(guī)表達(dá)式。例如,不同的字符串 "ssia"、 "ssio"、 "sia"、 "sio"、 "sh"、 "cia"、 "sh"、 "tio"、 "tia"和"tch,, 每個(gè)都將被變音位鍵"X"替換。字符串"f,、 "v"和"ph"每個(gè)都將被變音 位鍵"F"替換。然后,變音位正規(guī)表達(dá)式通過(guò)在每個(gè)變音位鍵之間放置 一個(gè)可選的元音通配符來(lái)創(chuàng)建,該元音通配符可以構(gòu)成任何數(shù)量的不 同的元音或非元音。使用變音位正規(guī)表達(dá)式的搜索可以產(chǎn)生極好的拼 寫檢査結(jié)果,也就是,可輸出作為文本輸入的建議拼寫檢查解釋的極 好的被識(shí)別的語(yǔ)言對(duì)象120,但是所需的搜索可能消耗大量處理資源。 同樣地,有利地,僅在需要較少處理資源且產(chǎn)生少量拼寫檢查結(jié)果的 許多其它拼寫檢查算法執(zhí)行之后執(zhí)行變音位正規(guī)表達(dá)式拼寫檢査算 法。接下來(lái)的四個(gè)拼寫檢查算法是可選的,且涉及變音位操作,并與 以上描述的字符"輸錯(cuò)"拼寫檢查算法有些類似。更為具體地,在變音 位正規(guī)表達(dá)式生成之后,這四個(gè)變音位操作拼寫檢查算法涉及變音位正規(guī)表達(dá)式中的變音位鍵的操作。特別地,順次地,最后的四個(gè)拼寫 檢查算法是遺漏變音位鍵插入拼寫檢査算法、變音位鍵交換拼寫檢查 算法、變音位鍵省略拼寫檢查算法和變音位鍵調(diào)換拼寫檢查算法。這 些都以與上面提到的相應(yīng)的基于字符的"輸錯(cuò)"算法的那些算法相似的 方式操作,只是操作涉及變音位正規(guī)表達(dá)式中的變音位鍵。如果被識(shí)別的語(yǔ)言對(duì)象120的數(shù)量仍然不夠,之后文本輸入經(jīng)歷 后綴改變的拼寫檢査算法。例如,文本輸入的末端字符可能被替換為 通配符元素,也就是,通配符字符,其可以是任何字符或字符的缺失。 之后,搜索語(yǔ)言數(shù)據(jù)源以找到相應(yīng)的語(yǔ)言對(duì)象120。將這樣的一個(gè)拼寫檢查算法稱為"占位符(place holder)"算法。如果對(duì)應(yīng)于修改文本 輸入的被識(shí)別的語(yǔ)言對(duì)象120不夠,重復(fù)該過(guò)程,原始文本輸入的兩 個(gè)末端字符的每一個(gè)被替換為一個(gè)通配符元素。如果原始文本輸入的 兩個(gè)末端字符被替換為通配符元素的被識(shí)別的語(yǔ)言對(duì)象120不夠,原 始文本輸入的最后三個(gè)字符被替換為通配符元素,如此等等。產(chǎn)生這 樣修改的文本輸入,并進(jìn)行搜索,直到足夠的相應(yīng)語(yǔ)言對(duì)象120被識(shí) 別作為原始文本輸入的可能的拼寫檢查解釋。在當(dāng)前的實(shí)施例中,對(duì)于任何給定的拼錯(cuò)的文本輸入,拼寫檢查 功能44試圖找到15個(gè)建議拼寫檢査解釋。也就是,依次執(zhí)行連續(xù)的 拼寫檢査算法,直到識(shí)別了 15個(gè)建議拼寫檢査解釋。而且,在當(dāng)前的 實(shí)施例中,如圖7B中的406所示,拼寫檢查功能44最終輸出最多十 五個(gè)被識(shí)別的建議拼寫檢査解釋中的八個(gè)。數(shù)量十五和八是任意的, 可以使用不同的數(shù)量,而不脫離本發(fā)明的概念。可以選擇性地采用用于改變文本輸入的后綴部分的修改算法,其 中僅刪除一個(gè)或多個(gè)末端字符而不被替換為通配符元素。將這樣的修 改的且可選的拼寫檢查算法稱為"后綴斬?cái)?chop)"算法或"斬?cái)?算 法。這樣的情形具有將一個(gè)或多個(gè)末端字符僅僅替換為通配符元素的 "字符缺失"的效果。從而,該修改的算法通常產(chǎn)生比采用通配符元素 的算法更少的建議拼寫檢査解釋。然而,算法的該修改版本可以更易 于實(shí)現(xiàn),可能需要較少的處理器能力,并且可能仍能提供有用的結(jié)果。 如以上所述的,可以在執(zhí)行前述的變音位分析之前執(zhí)行任一個(gè)后綴改變的拼寫檢查算法,這都不脫離披露的和要求的概念。除了采用"占位符"和"斬?cái)?算法來(lái)找到直接相應(yīng)于修改的文本輸 入的語(yǔ)言對(duì)象120之外,修改的文本輸入本身可以經(jīng)歷上面提到的拼 寫檢查算法序列。這樣的處理可能提供另外的有用的建議拼寫檢查解 釋。該拼寫檢査過(guò)程大體如圖7A和圖7B所示,這里將對(duì)其進(jìn)行描述。 該處理在402開始,在402,文本輸入經(jīng)歷涉及忽略大小寫和/或重音 的拼寫檢査算法,并且針對(duì)相應(yīng)的語(yǔ)言對(duì)象120來(lái)搜索語(yǔ)言數(shù)據(jù)源。 將任何被找到的相應(yīng)的語(yǔ)言對(duì)象120添加到列表中。之后,在404, 確定列表中的被識(shí)別的語(yǔ)言對(duì)象120的數(shù)量是否達(dá)到預(yù)定的數(shù)量。如 果已經(jīng)達(dá)到了預(yù)定的數(shù)量,處理繼續(xù)到406,在406,輸出被識(shí)別的語(yǔ) 言對(duì)象120中的至少一些,之后處理返回到圖4中的204處的主過(guò)程。另一方面,如果在404確定尚未達(dá)到預(yù)定的數(shù)量,則處理繼續(xù)到 408,在408,文本輸入經(jīng)歷涉及語(yǔ)音替換的拼寫檢查算法,并且針對(duì) 相應(yīng)的語(yǔ)言對(duì)象120來(lái)搜索語(yǔ)言數(shù)據(jù)源。將任何被識(shí)別的語(yǔ)言對(duì)象120 添加到列表中。之后,在412確定列表中的被識(shí)別的語(yǔ)言對(duì)象120的 數(shù)量是否達(dá)到預(yù)定的數(shù)量。如果已經(jīng)達(dá)到了預(yù)定的數(shù)量,則處理繼續(xù) 到406,在406,輸出被識(shí)別的語(yǔ)言對(duì)象120中的至少一些。否則,處理繼續(xù)到416,在416,文本輸入經(jīng)歷涉及遺漏字符插入 的拼寫檢査算法,并且針對(duì)相應(yīng)的語(yǔ)言對(duì)象120來(lái)搜索語(yǔ)言數(shù)據(jù)源。 將任何被識(shí)別的相應(yīng)的語(yǔ)言對(duì)象120添加到列表中。之后,在420確 定列表中的被識(shí)別的語(yǔ)言對(duì)象120的數(shù)量是否達(dá)到預(yù)定的數(shù)量。如果 已經(jīng)達(dá)到了預(yù)定的數(shù)量,則處理繼續(xù)到406,在406,輸出被識(shí)別的語(yǔ) 言對(duì)象120中的至少一些。否則,過(guò)程繼續(xù)到424,在424,文本輸入經(jīng)歷涉及字符交換的拼 寫檢查算法,并且針對(duì)相應(yīng)的語(yǔ)言對(duì)象120來(lái)搜索語(yǔ)言數(shù)據(jù)源。將任 何被識(shí)別的相應(yīng)的語(yǔ)言對(duì)象120添加到列表中。之后,在428確定列 表中的被識(shí)別的語(yǔ)言對(duì)象120的數(shù)量是否達(dá)到預(yù)定的數(shù)量。如果已經(jīng) 達(dá)到了預(yù)定的數(shù)量,則處理繼續(xù)到406,在406,輸出被識(shí)別的語(yǔ)言對(duì) 象120中的至少一些。否則,處理繼續(xù)到432,在432,文本輸入經(jīng)歷涉及字符省略的拼 寫檢查算法,并且針對(duì)相應(yīng)的語(yǔ)言對(duì)象120來(lái)搜索語(yǔ)言數(shù)據(jù)源。將任 何被識(shí)別的相應(yīng)的語(yǔ)言對(duì)象120添加到列表中。之后,在436確定列 表中的被識(shí)別的語(yǔ)言對(duì)象120的數(shù)量是否達(dá)到預(yù)定的數(shù)量。如果已經(jīng) 達(dá)到了預(yù)定的數(shù)量,則處理繼續(xù)到406,在406,輸出被識(shí)別的語(yǔ)言對(duì) 象120中的至少一些。否則,處理繼續(xù)到440,在440,文本輸入經(jīng)歷涉及把文本輸入當(dāng) 作分離的詞的拼寫檢查算法,并且針對(duì)相應(yīng)的語(yǔ)言對(duì)象120來(lái)搜索語(yǔ) 言數(shù)據(jù)源。將任何被識(shí)別的相應(yīng)的語(yǔ)言對(duì)象120添加到列表中。之后, 在444確定列表中的被識(shí)別的語(yǔ)言對(duì)象120的數(shù)量是否達(dá)到預(yù)定的數(shù) 量。如果已經(jīng)達(dá)到了預(yù)定的數(shù)量,則處理繼續(xù)到406,在406,輸出被 識(shí)別的語(yǔ)言對(duì)象120中的至少一些。否則,處理繼續(xù)到448,在448,文本輸入經(jīng)歷涉及字符調(diào)換的拼 寫檢查算法,并且針對(duì)相應(yīng)的語(yǔ)言對(duì)象120來(lái)搜索語(yǔ)言數(shù)據(jù)源。將任 何被識(shí)別的相應(yīng)的語(yǔ)言對(duì)象120添加到列表中。如以下將更為詳細(xì)地 描述的,可以優(yōu)選一些被識(shí)別的語(yǔ)言對(duì)象120,在這些語(yǔ)言對(duì)象120 中,文本輸入中的替換字符和原始字符(即,被替換的字符)在鍵盤 20上位于預(yù)定的鄰近度內(nèi)。之后,在452確定列表中的被識(shí)別的語(yǔ)言 對(duì)象120的數(shù)量是否達(dá)到預(yù)定的數(shù)量。如果已經(jīng)達(dá)到了預(yù)定的數(shù)量, 則處理繼續(xù)到406,在406,輸出被識(shí)別的語(yǔ)言對(duì)象120中的至少一些。否則,處理繼續(xù)到456,在456,文本輸入經(jīng)歷涉及附加規(guī)則的拼 寫檢查算法,并且針對(duì)相應(yīng)的語(yǔ)言對(duì)象120來(lái)搜索語(yǔ)言數(shù)據(jù)源。將任 何被識(shí)別的相應(yīng)的語(yǔ)言對(duì)象120添加到列表中。之后,在460確定列 表中的被識(shí)別的語(yǔ)言對(duì)象120的數(shù)量是否達(dá)到預(yù)定的數(shù)量。如果已經(jīng) 達(dá)到了預(yù)定的數(shù)量,則處理繼續(xù)到406,在406,輸出被識(shí)別的語(yǔ)言對(duì) 象120中的至少一些。否則,處理繼續(xù)到464,在464,文本輸入經(jīng)歷涉及變音位正規(guī)表 達(dá)式的形成的拼寫檢査算法,并且針對(duì)相應(yīng)的語(yǔ)言對(duì)象120來(lái)搜索語(yǔ) 言數(shù)據(jù)源。將任何被識(shí)別的相應(yīng)的語(yǔ)言對(duì)象120添加到列表中。之后, 在468確定列表中的被識(shí)別的語(yǔ)言對(duì)象120的數(shù)量是否達(dá)到預(yù)定的數(shù)量。如果已經(jīng)達(dá)到了預(yù)定的數(shù)量,則處理繼續(xù)到406,在406,輸出被 識(shí)別的語(yǔ)言對(duì)象120中的至少一些。否則,處理繼續(xù)到472,在472,文本輸入經(jīng)歷涉及遺漏變音位鍵 插入的拼寫檢查算法,并且針對(duì)相應(yīng)的語(yǔ)言對(duì)象120來(lái)搜索語(yǔ)言數(shù)據(jù) 源。將任何被識(shí)別的相應(yīng)的語(yǔ)言對(duì)象120添加到列表中。之后,在476 確定列表中的被識(shí)別的語(yǔ)言對(duì)象120的數(shù)量是否達(dá)到預(yù)定的數(shù)量。如 果已經(jīng)達(dá)到了預(yù)定的數(shù)量,則處理繼續(xù)到406,在406,輸出被識(shí)別的 語(yǔ)言對(duì)象120中的至少一些。否則,處理繼續(xù)到480,在480,文本輸入經(jīng)歷涉及變音位鍵交換 的拼寫檢查算法,并且針對(duì)相應(yīng)的語(yǔ)言對(duì)象120來(lái)搜索語(yǔ)言數(shù)據(jù)源。 將任何被識(shí)別的相應(yīng)的語(yǔ)言對(duì)象120添加到列表中。之后,在484確 定列表中的被識(shí)別的語(yǔ)言對(duì)象120的數(shù)量是否達(dá)到預(yù)定的數(shù)量。如果 已經(jīng)達(dá)到了預(yù)定的數(shù)量,則處理繼續(xù)到406,在406,輸出被識(shí)別的語(yǔ) 言對(duì)象120中的至少一些。否則,處理繼續(xù)到488,在488,文本輸入經(jīng)歷涉及變音位鍵省略 的拼寫檢査算法,并且針對(duì)相應(yīng)的語(yǔ)言對(duì)象120來(lái)搜索語(yǔ)言數(shù)據(jù)源。 將任何被識(shí)別的相應(yīng)的語(yǔ)言對(duì)象120添加到列表中。之后,在492確 定列表中的被識(shí)別的語(yǔ)言對(duì)象120的數(shù)量是否達(dá)到預(yù)定的數(shù)量。如果 已經(jīng)達(dá)到了預(yù)定的數(shù)量,則處理繼續(xù)到406,在406,輸出被識(shí)別的語(yǔ) 言對(duì)象120中的至少一些。否則,繼續(xù)到494,在494,文本輸入經(jīng)歷涉及變音位鍵調(diào)換的拼 寫檢查算法,并且針對(duì)相應(yīng)的語(yǔ)言對(duì)象120來(lái)搜索語(yǔ)言數(shù)據(jù)源。將任 何被識(shí)別的相應(yīng)的語(yǔ)言對(duì)象120添加到列表中。之后,在496確定列 表中的被識(shí)別的語(yǔ)言對(duì)象120的數(shù)量是否達(dá)到預(yù)定的數(shù)量。如果已經(jīng) 達(dá)到了預(yù)定的數(shù)量,則處理繼續(xù)到406,在406,輸出被識(shí)別的語(yǔ)言對(duì) 象120中的至少一些。否則,處理繼續(xù)到498,在498,文本輸入經(jīng)歷涉及改變文本輸入 后綴的拼寫檢查算法,也就是,"占位符"算法或可選地"斬?cái)?算法, 以生成修改的文本輸入。針對(duì)相應(yīng)于修改的文本輸入的語(yǔ)言對(duì)象120 來(lái)搜索語(yǔ)言數(shù)據(jù)源。如在別處提到的,文本輸入可以在經(jīng)歷變音位分析拼寫檢查算法之前經(jīng)歷后綴改變的拼寫檢查算法,這不脫離披露和 要求的概念。同樣如這里所提到的,由"占位符"算法或"斬?cái)?算法而 形成的修改的文本輸入本身可以被這一系列的拼寫檢查算法處理,例如,從圖7A的402開始處理修改的文本輸入本身,之后如圖7A和圖 7B所描繪的以及如以上所描述的,繼續(xù)進(jìn)行處理。修改的文本輸入的 這樣的進(jìn)一步處理可能會(huì)產(chǎn)生另外的有用的建議拼寫檢查解釋。不管修改的文本輸入本身是否經(jīng)歷該拼寫檢査算法序列,處理最 終繼續(xù)到406,在406,輸出被識(shí)別的語(yǔ)言對(duì)象120中的至少一些。之 后,處理返回到圖4中的204的主過(guò)程。如在別處所提到的,當(dāng)試圖識(shí)別與拼寫校正功能操作期間由各種 拼寫檢查算法生成的修改的文本輸入相對(duì)應(yīng)的語(yǔ)言對(duì)象120時(shí),搜索 存儲(chǔ)器40中的所有的語(yǔ)言數(shù)據(jù)源。特別地,并且如圖8所示,文本輸 入要經(jīng)歷的拼寫檢查算法產(chǎn)生修改的文本輸入,如在504 —樣??梢?理解,該修改的文本輸入可能實(shí)際上具有正規(guī)表達(dá)式的形式。之后,如在508 —樣,搜索一般詞列表104,如在512 —樣,搜 索新詞數(shù)據(jù)庫(kù)108,如在516—樣,搜索地址簿112,并且,如在520 一樣,搜索其它數(shù)據(jù)源116。之后,處理返回到504,在504,可以通 過(guò)同樣的拼寫檢查算法或者適當(dāng)時(shí)通過(guò)不同的拼寫檢査算法,生成另 外的修改的文本輸入。搜索各種語(yǔ)言數(shù)據(jù)源的特定順序不是那么重要 的,并且可以使用與圖8描繪的順序不同的搜索順序,而不會(huì)脫離披 露和要求的概念。各種被識(shí)別的語(yǔ)言對(duì)象120被收集在列表中,如在 圖7B中的406 —樣,最終輸出其中的至少一部分。如上面所提到的,可以基于鍵盤20上被替換字符和替換字符之間 的鄰近度,向通過(guò)執(zhí)行字符調(diào)換拼寫檢査算法而識(shí)別的語(yǔ)言對(duì)象120 應(yīng)用優(yōu)先選擇。例如,在圖6A所示的例子中,對(duì)于拼錯(cuò)的文本輸入 362"SMITG",用戶可能本想輸入"SMITH",也就是,原始文本輸入中 的字符"G"被替換為字符"H"。字符調(diào)換拼寫檢查算法可能是將語(yǔ)言對(duì) 象120"SMITH"識(shí)別為"SMITG"的建議拼寫檢查解釋的第一算法。字 符調(diào)換拼寫檢查算法也可能將語(yǔ)言對(duì)象120" SMITS"識(shí)別為"SMITG" 的建議拼寫檢查解釋。然而,從圖1中可以看出,"G"鍵26和"H"鍵26彼此相鄰布置。另一方面,"G"鍵26和"S"鍵26布置為分開三個(gè)鍵。 如果假設(shè)"G"可能是用戶"輸錯(cuò)"的結(jié)果,也就是,用戶打算驅(qū)動(dòng)"H"鍵 26,但是錯(cuò)誤地驅(qū)動(dòng)了"G"鍵26,當(dāng)與"SMITS"進(jìn)行比較時(shí),優(yōu)先選 擇"SMITH"將具有實(shí)際意義,因?yàn)橄啾扔?S"鍵26 , "G"鍵26更鄰近 "H"鍵26??梢葬娪萌魏梧徑乳撝?,并且可以應(yīng)用任何類型的優(yōu)先選擇。 鄰近度閾值的例子可以是原始的和替換的字符將必須布置在相鄰的鍵 26上,也就是,鍵26并排布置。例如,鍵26"R""T""Y""F""H""C""V" 和"B"可以被認(rèn)為是鄰近"G"鍵26。通常,按照相關(guān)聯(lián)的頻率對(duì)象124的頻率值減小的順序輸出被識(shí) 別作為文本輸入的建議拼寫檢査解釋的語(yǔ)言對(duì)象120,盡管也可采用 其它的優(yōu)先順序方法。因此,由相關(guān)聯(lián)的頻率對(duì)象124的頻率值提供 的"額定頻率"可以乘以另一個(gè)數(shù)達(dá)到總頻率(即,調(diào)整過(guò)的頻率)。一 個(gè)示例的另一個(gè)數(shù)可以是整數(shù)值三,結(jié)果是"SMITH"的額定頻率值將 乘以三以獲得調(diào)整過(guò)的頻率,用于對(duì)建議拼寫檢査解釋進(jìn)行輸出排序 的目的。當(dāng)然,可以設(shè)想其它類型的優(yōu)先選擇,而不脫離披露和要求 的概念。描繪這樣的優(yōu)先選擇的示例的流程圖示出在圖9中。如同在604 一樣,字符調(diào)換拼寫檢査算法將產(chǎn)生修改的文本輸入,也就是修改的 文本輸入"SMITH",代替拼錯(cuò)的文本輸入"SMITG"。之后,如同在608 一樣,系統(tǒng)確定將原始文本輸入中的一個(gè)字符替換為鍵盤20上預(yù)定鄰 近度內(nèi)的字符是否產(chǎn)生修改的文本輸入。如果預(yù)定鄰近度是字符必須 相鄰,那么在608的結(jié)果將是肯定的,因?yàn)?G"和"H"鍵26在鍵盤20 上彼此相鄰布置。如果60S的答案是肯定的,處理將繼續(xù),如同在612 一樣,在612,將向被識(shí)別的語(yǔ)言對(duì)象120應(yīng)用優(yōu)先選擇。否則,處 理將返回604,在604,適當(dāng)時(shí),將生成另一個(gè)修改的文本輸入。當(dāng)如 同在圖7B中的406 —樣,輸出"SMITG"的各種建議拼寫檢査解釋時(shí), 當(dāng)與其它的建議拼寫檢查解釋312相比較時(shí),"SMITH"的三倍的額定 頻率值可能將在建議拼寫檢查解釋312的列表308中給它一個(gè)優(yōu)先的 位置,如在圖6A中可以看出的。如上面所提到的,拼錯(cuò)的文本輸入可以經(jīng)歷后綴改變的拼寫檢查 算法,例如"占位符"算法,其中,原始文本輸入的一個(gè)或多個(gè)末端字 符的每一個(gè)被替換為一個(gè)通配符字符,也就是通配符元素,其可以指 代相關(guān)字母表中的任何字符或字符的缺失。描繪該算法的示例的流程圖示出在圖10中。處理開始,如同在704 —樣,在704,通過(guò)將一個(gè) 附加的末端字符替換為通配符元素而形成修改的文本輸入。通過(guò)"占位 符"算法相對(duì)于給定的拼錯(cuò)的文本輸入的第一操作,該第一修改的文本 輸入將僅有單個(gè)末端字符被替換為通配符元素。之后,處理將繼續(xù),如同在708 —樣,在708,將從存儲(chǔ)器20中 的各種語(yǔ)言數(shù)據(jù)源中搜索與修改的文本輸入相對(duì)應(yīng)的語(yǔ)言對(duì)象120。 在這點(diǎn)上, 一個(gè)建議拼寫檢査解釋可以是與原始文本輸入具有相同個(gè) 數(shù)的字符且與原始文本輸入中除末端字符之外的所有字符匹配的語(yǔ)言 對(duì)象。另一個(gè)建議拼寫檢査解釋可以是比原始文本輸入少一個(gè)字符且 與原始文本輸入中除末端字符之外的所有字符匹配的語(yǔ)言對(duì)象。之后如同在712—樣,確定是否識(shí)別了足夠的語(yǔ)言結(jié)果,也就是, 足夠數(shù)量的語(yǔ)言對(duì)象120。如果已識(shí)別了足夠的語(yǔ)言對(duì)象120,則處理 結(jié)束,如同在716—樣。之后,如在圖7B中的406 —樣,輸出結(jié)果。 然而,如果沒(méi)有識(shí)別足夠的語(yǔ)言對(duì)象120,則處理繼續(xù),如同在704 一樣,在704,產(chǎn)生另一個(gè)修改的文本輸入,該修改的文本輸入將原 始文本輸入的另一個(gè)末端字符替換為通配符元素,也就是,原始文本 輸入具有一對(duì)通配符元素代替它的兩個(gè)末端字符。之后,處理繼續(xù), 如同在708 —樣,在708,可以識(shí)別另外的語(yǔ)言對(duì)象120,并且在712, 評(píng)估被識(shí)別的語(yǔ)言對(duì)象120的數(shù)量是否足夠??蛇x的修改的后綴改變的拼寫檢査算法(即,"斬?cái)?算法)大體 上在圖10A所示的流程圖中描繪。以與圖IO的"占位符"拼寫檢查算法 類似的方式,處理開始,如同在804 —樣,在804,通過(guò)刪除一個(gè)另 外的末端字符而產(chǎn)生修改的文本輸入。通過(guò)"斬?cái)?算法相對(duì)于給定的 拼錯(cuò)的文本輸入的第一操作,該第一修改的文本輸入將僅僅刪除一個(gè) 末端字符。之后,處理繼續(xù),如同在808 —樣,在808,將從存儲(chǔ)器20中的各種語(yǔ)言數(shù)據(jù)源中搜索與修改的文本輸入相對(duì)應(yīng)的語(yǔ)言對(duì)象120。建 議拼寫檢查解釋的每一個(gè)都是比原始文本輸入少一個(gè)字符的語(yǔ)言對(duì) 象,并且除刪除的末端字符之外的所有字符都與原始文本輸入相匹配。 之后如同在812 —樣,確定是否已識(shí)別了足夠數(shù)量的語(yǔ)言對(duì)象120。如果已識(shí)別了足夠的語(yǔ)言對(duì)象120,則處理結(jié)束,如同在816 — 樣。之后如在圖7B中的406 —樣,輸出結(jié)果。然而,如果沒(méi)有識(shí)別足 夠的語(yǔ)言對(duì)象120,則處理繼續(xù),如同在804 —樣,在804,產(chǎn)生另一 個(gè)修改的文本輸入,該修改的文本輸入將原始文本輸入的另一個(gè)末端 字符刪除,也就是,原始文本輸入有兩個(gè)末端字符被刪除。之后,處 理繼續(xù),如同在808 —樣,在808,可以識(shí)別另外的語(yǔ)言對(duì)象120,并 且如同在812—樣,在812,評(píng)估被識(shí)別的語(yǔ)言對(duì)象120的數(shù)量是否 足夠。如圖11中的流程圖所描繪的,拼寫檢査功能44可以額外地提供 己知補(bǔ)償,偏袒按順序執(zhí)行的拼寫檢査算法中使用得相對(duì)頻繁的拼寫 檢查算法。例如,如果確定用戶打算調(diào)換文本輸入中的字符對(duì),則字 符交換拼寫檢査算法可能產(chǎn)生由用戶以比其它拼寫檢査算法產(chǎn)生的建 議拼寫檢查解釋更大規(guī)律性(regularity)選擇的建議拼寫檢查解釋。 隨著時(shí)間的過(guò)去,系統(tǒng)將確定用戶正在以相對(duì)大規(guī)律性選擇由字符交 換拼寫檢查算法產(chǎn)生的建議拼寫檢査解釋,結(jié)果,將優(yōu)先選擇應(yīng)用于 由字符交換拼寫檢查算法產(chǎn)生的未來(lái)的建議拼寫檢查解釋。用戶選擇的這種高規(guī)律性可能以各種方式被確定。例如,系統(tǒng)可 能等待,直到用戶己經(jīng)選擇了大量的建議拼寫檢查解釋來(lái)替換拼錯(cuò)的 文本輸入。例如,系統(tǒng)可能等待,直到已經(jīng)積累了關(guān)于一千個(gè)拼寫檢 查選擇、或一萬(wàn)個(gè)拼寫檢查選擇的數(shù)據(jù)??蛇x地,系統(tǒng)可能等待,直 到單個(gè)拼寫檢査算法產(chǎn)生了特定數(shù)量(比方說(shuō)100或500)的被用戶 選擇的建議拼寫檢查解釋。或者,系統(tǒng)可能在使用一個(gè)月或一年之后 評(píng)估累積的關(guān)于拼寫檢查選擇的數(shù)據(jù),而不管選擇的總量。無(wú)論如何, 系統(tǒng)存儲(chǔ)數(shù)據(jù),該數(shù)據(jù)是關(guān)于最終被用戶選擇的每個(gè)建議拼寫檢查解 釋是由哪個(gè)拼寫檢查算法產(chǎn)生的。如同在圖11中的904 —樣,一旦達(dá)到累積點(diǎn),則如同在908 —樣,系統(tǒng)確定是否任一拼寫檢查算法的選擇歷史滿足任一預(yù)定的使用標(biāo) 準(zhǔn)。例如, 一個(gè)使用標(biāo)準(zhǔn)可能是給定的拼寫檢查算法產(chǎn)生的建議拼寫 檢查解釋的選擇頻率處于或大于預(yù)定閾值,例如由特定算法產(chǎn)生的建 議拼寫檢査解釋被用戶選擇的次數(shù)20%或比20%更多。作為另一個(gè)例 子,系統(tǒng)可能確定是否用戶選擇由特定拼寫檢査算法產(chǎn)生的建議拼寫 檢查解釋的—速率處于或大于所有詞語(yǔ)輸入總量中的某一閾值頻率。例 如,如果用戶選擇由特定拼寫檢查算法產(chǎn)生的建議拼寫檢查解釋比每 一百個(gè)輸入詞語(yǔ)多三倍,則可能滿足預(yù)定的使用標(biāo)準(zhǔn)。從而可以看出, 可以使用任何一個(gè)或多個(gè)使用標(biāo)準(zhǔn),不管其是否在此被描述。如果在卯8確定沒(méi)有滿足預(yù)定的使用標(biāo)準(zhǔn),則處理結(jié)束,如同在910 —樣。然而,如果相對(duì)于特定的拼寫檢查算法,在908滿足一個(gè) 或多個(gè)預(yù)定的使用標(biāo)準(zhǔn),則處理繼續(xù),如同在912 —樣,在912,向 該特定的算法應(yīng)用優(yōu)先選擇,并且,尤為特別地,應(yīng)用向隨后由該特 定的算法產(chǎn)生的建議拼寫檢查解釋應(yīng)用優(yōu)先選擇。例如,系統(tǒng)可能將 與被識(shí)別的語(yǔ)言對(duì)象100相關(guān)聯(lián)的頻率對(duì)象124的額定頻率值乘以確 定乘法因數(shù)。 一旦在圖7B中的406輸出,首選的語(yǔ)言對(duì)象120 (即由 該特定的算法產(chǎn)生的語(yǔ)言對(duì)象)可能在優(yōu)先位置被輸出。在一個(gè)實(shí)施例中,通過(guò)執(zhí)行任一給定拼寫檢查算法而識(shí)別的語(yǔ)言 對(duì)象120的額定頻率值與對(duì)該算法特定的因數(shù)相乘。例如,在序列中 靠前的拼寫檢查算法比序列中靠后的拼寫檢查算法可能具有更大的乘 法因數(shù)。這將傾向于使由序列中靠前的拼寫檢查算法產(chǎn)生的語(yǔ)言對(duì)象 比序列中靠后的拼寫檢查算法更優(yōu)先輸出。來(lái)自912的、將應(yīng)用到由 特定拼寫檢查算法產(chǎn)生的建議拼寫檢查解釋的優(yōu)先選擇可以具有另外 的乘法器的形式,或者通過(guò)增加該算法的原有乘法因數(shù)。其它優(yōu)選的 配置將是顯而易見的。
權(quán)利要求
1. 一種能夠管理手持電子設(shè)備上的拼寫檢查功能的方法,所述拼寫檢查功能包括存儲(chǔ)在手持電子設(shè)備上的用于當(dāng)使文本輸入經(jīng)歷所述拼寫檢查功能時(shí)在其上執(zhí)行的多個(gè)拼寫檢查算法,所述方法包括針對(duì)多個(gè)文本輸入中的每一個(gè),執(zhí)行至少一些算法,以產(chǎn)生所述文本輸入的建議拼寫檢查解釋;輸出至少一些建議拼寫檢查解釋;檢測(cè)關(guān)于被輸出的至少一些建議拼寫檢查解釋的選擇輸入;確定針對(duì)由特定拼寫檢查算法產(chǎn)生的建議拼寫檢查解釋而作出的選擇輸入的累積量滿足多個(gè)預(yù)定使用標(biāo)準(zhǔn);以及響應(yīng)于所述確定,并且關(guān)于后續(xù)文本輸入向由所述特定算法產(chǎn)生的建議拼寫檢查解釋應(yīng)用優(yōu)先選擇,并且在所述輸出中采用所述優(yōu)先選擇。
2. 如權(quán)利要求1所述的方法,其中,手持電子設(shè)備包括處理器裝 置,所述處理器裝置包括處理器和其中存儲(chǔ)有多個(gè)語(yǔ)言對(duì)象和多個(gè)頻 率對(duì)象的存儲(chǔ)器,每個(gè)語(yǔ)言對(duì)象與具有指示該語(yǔ)言對(duì)象在語(yǔ)言中的相對(duì)頻率的頻率值的頻率對(duì)象相關(guān)聯(lián),并且所述方法進(jìn)一步包括采用一數(shù)值乘數(shù),作為所述優(yōu)先選擇,所述數(shù)值乘數(shù)應(yīng)用于被識(shí)別為由特 定算法響應(yīng)于后續(xù)文本輸入而產(chǎn)生的建議拼寫檢査解釋的語(yǔ)言對(duì)象的 頻率值。
3. —種手持電子設(shè)備,包括處理器裝置,包括處理器和其中存儲(chǔ)有多個(gè)語(yǔ)言對(duì)象的存儲(chǔ)器, 所述存儲(chǔ)器中進(jìn)一步存儲(chǔ)有多個(gè)例程,所述例程包括提供拼寫檢査功 能的拼寫檢查例程,所述拼寫檢査功能包括存儲(chǔ)在存儲(chǔ)器中的、用于 當(dāng)使文本輸入經(jīng)歷拼寫檢查功能時(shí)在處理器上執(zhí)行的多個(gè)拼寫檢查算法;輸入裝置,包括多個(gè)輸入構(gòu)件,所述輸入裝置被構(gòu)造用于向處理 器裝置提供輸入;輸出裝置,被構(gòu)造用于從處理器裝置接收輸出信號(hào);所述例程具有指令,當(dāng)在處理器上執(zhí)行指令時(shí),所述指令使手持電子設(shè)備執(zhí)行以下操作針對(duì)多個(gè)文本輸入中的每一個(gè),執(zhí)行至少一些算法,以產(chǎn)生所述 文本輸入的建議拼寫檢查解釋;輸出至少一些建議拼寫檢査解釋;檢測(cè)關(guān)于被輸出的至少一些建議拼寫檢查解釋的選擇輸入; 確定針對(duì)由特定拼寫檢査算法產(chǎn)生的建議拼寫檢查解釋而作出的 選擇輸入的累積量滿足多個(gè)預(yù)定使用標(biāo)準(zhǔn);以及 響應(yīng)于所述確定,并且關(guān)于后續(xù)文本輸入向由特定算法產(chǎn)生的建議拼寫檢査解釋應(yīng)用優(yōu)先選擇,并且 在所述輸出中采用所述優(yōu)先選擇。
4.如權(quán)利要求3所述的手持電子設(shè)備,其中,存儲(chǔ)器中進(jìn)一步存 儲(chǔ)有多個(gè)頻率對(duì)象,每個(gè)語(yǔ)言對(duì)象與具有指示該語(yǔ)言對(duì)象在語(yǔ)言中的 相對(duì)頻率的頻率值的頻率對(duì)象相關(guān)聯(lián),并且,其中,所述操作進(jìn)一步包括采用一數(shù)值乘數(shù),作為所述優(yōu)先選擇,所述數(shù)值乘數(shù)應(yīng)用于被識(shí)別為由特定算法響應(yīng)于后續(xù)文本輸入而產(chǎn)生的建議拼寫檢查解釋的 語(yǔ)言對(duì)象的頻率值。
全文摘要
一種改進(jìn)的拼寫檢查功能和手持電子設(shè)備提供一種拼寫檢查特征,該特征包括基于用戶針對(duì)由算法產(chǎn)生的拼寫檢查結(jié)果的廣泛選擇,向拼寫檢查算法提供優(yōu)先選擇。
文檔編號(hào)G06F17/27GK101281517SQ200810100398
公開日2008年10月8日 申請(qǐng)日期2008年3月24日 優(yōu)先權(quán)日2007年3月30日
發(fā)明者瓦迪姆·富克斯, 香農(nóng)·拉爾夫·懷特 申請(qǐng)人:捷訊研究有限公司