一種移動終端的聯(lián)系人撥號搜索方法及其系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及移動終端聯(lián)系人搜索領(lǐng)域,尤其涉及一種移動終端的聯(lián)系人撥號搜索方法及其系統(tǒng)。
【背景技術(shù)】
[0002]現(xiàn)時的聯(lián)系人搜索方法為拼音模糊匹配搜索,中文字輸入需要通過拼音或筆畫輸入法輸入,輸入過程繁雜,在搜索聯(lián)系人時所耗費的時間亦較長;而且,搜索結(jié)果不支持優(yōu)先級排序顯示,不能滿足用戶的個性化需求。
【發(fā)明內(nèi)容】
[0003]針對現(xiàn)有技術(shù)的不足,本發(fā)明的目的在于提供一種操作方便快捷的聯(lián)系人撥號搜索方法。
[0004]本發(fā)明的另外一個目的在于提供一種移動終端的聯(lián)系人撥號搜索系統(tǒng)。
[0005]為實現(xiàn)上述目的,本發(fā)明采用的技術(shù)方案如下:一種移動終端的聯(lián)系人撥號搜索方法,該方法包括以下步驟:
[0006]建立撥號數(shù)字與字母的對應(yīng)關(guān)系;
[0007]讀取移動終端系統(tǒng)的聯(lián)系人數(shù)據(jù)并進(jìn)行緩存;
[0008]提取聯(lián)系人的名稱以及號碼,分別將名稱以及號碼與撥號數(shù)字建立搜索關(guān)系;
[0009]根據(jù)搜索框輸入的撥號數(shù)字,對聯(lián)系人的名稱及號碼進(jìn)行匹配搜索并在顯示框中顯示搜索結(jié)果。
[0010]進(jìn)一步,所述匹配搜索按照如下規(guī)則進(jìn)行搜索:
[0011]將聯(lián)系人的中文名稱轉(zhuǎn)化為拼音字母,并將拼音字母分別進(jìn)行全拼、首字母與音節(jié)混合、單純首字母的排列組合,
[0012]將所得的字母排列組合與撥號數(shù)字建立搜索關(guān)系,
[0013]根據(jù)搜索框輸入的撥號數(shù)字利用子串搜索算法對聯(lián)系人名稱及號碼進(jìn)行匹配搜索,給出初步的搜索結(jié)果。
[0014]優(yōu)選地,所述方法還包括以下步驟:
[0015]對搜索結(jié)果根據(jù)匹配優(yōu)先級進(jìn)行帥選,剔除不合理的搜索結(jié)果,具體為:如果搜索結(jié)果不是以對應(yīng)聯(lián)系人的首字母開頭,則認(rèn)為搜索結(jié)果不合理,直接將優(yōu)先級定為負(fù)數(shù),搜索結(jié)果根據(jù)優(yōu)先級排序時直接剔除;
[0016]將合理的搜索結(jié)果按照優(yōu)先級進(jìn)行排序。
[0017]優(yōu)選地,所述優(yōu)先級的排序按照如下原則進(jìn)行:
[0018]I)名稱搜索結(jié)果優(yōu)先,號碼搜索結(jié)果次之;
[0019]2)匹配起點靠前者優(yōu)先;
[0020]3)匹配串長度越短者優(yōu)先;
[0021]4)中文首字母搜索:當(dāng)搜索串長度大于等于目標(biāo)串長度時,目標(biāo)串為長者優(yōu)先;
[0022]5)英文搜索:當(dāng)搜索串長度小于目標(biāo)串長度時,目標(biāo)串為短者優(yōu)先。
[0023]進(jìn)一步,所述顯示框中呈現(xiàn)聯(lián)系人的頭像、名稱以及號碼,當(dāng)點擊其中的頭像、名稱、號碼,即觸發(fā)撥打該號碼事件。
[0024]進(jìn)一步,所述方法還包括以下步驟:
[0025]緩存中記錄經(jīng)搜索框搜索過的聯(lián)系人撥號搜索結(jié)果數(shù)據(jù);
[0026]當(dāng)用戶直接離開后,再次進(jìn)入程序時,顯示框中顯示上次記錄于緩存中的搜索結(jié)果O
[0027]為了實現(xiàn)本發(fā)明的另一目的,本發(fā)明還采用如下技術(shù)方案:一種移動終端的聯(lián)系人撥號搜索系統(tǒng),該系統(tǒng)包括:
[0028]建立撥號數(shù)字與字母的對應(yīng)關(guān)系的創(chuàng)建模塊;
[0029]讀取移動終端系統(tǒng)的聯(lián)系人數(shù)據(jù)并進(jìn)行緩存的讀取緩存模塊;
[0030]提取聯(lián)系人的名稱以及號碼,分別將名稱以及號碼與撥號數(shù)字建立搜索關(guān)系的轉(zhuǎn)化模塊;
[0031]根據(jù)搜索框輸入的撥號數(shù)字,對聯(lián)系人的名稱及號碼進(jìn)行匹配搜索并在顯示框中顯示搜索結(jié)果的搜索模塊。
[0032]進(jìn)一步,所述搜索模塊按照如下規(guī)則進(jìn)行搜索:
[0033]將聯(lián)系人的中文名稱轉(zhuǎn)化為拼音字母,并將拼音字母分別進(jìn)行全拼、首字母與音節(jié)混合、單純首字母的排列組合,
[0034]將所得的字母排列組合與撥號數(shù)字建立搜索關(guān)系,
[0035]根據(jù)搜索框輸入的撥號數(shù)字利用子串搜索算法對聯(lián)系人名稱及號碼進(jìn)行匹配搜索,給出初步的搜索結(jié)果。
[0036]優(yōu)選地,所述系統(tǒng)還包括:
[0037]帥選模塊,對搜索結(jié)果根據(jù)匹配優(yōu)先級進(jìn)行帥選,剔除不合理的搜索結(jié)果,具體為:如果搜索結(jié)果不是以對應(yīng)聯(lián)系人的首字母開頭,則認(rèn)為搜索結(jié)果不合理,直接將優(yōu)先級定為負(fù)數(shù),搜索結(jié)果根據(jù)優(yōu)先級排序時直接剔除;
[0038]排序模塊,將合理的搜索結(jié)果按照優(yōu)先級進(jìn)行排序。
[0039]優(yōu)選地,所述優(yōu)先級的排序按照如下原則進(jìn)行:
[0040]I)名稱搜索結(jié)果優(yōu)先,號碼搜索結(jié)果次之;
[0041]2)匹配起點靠前者優(yōu)先;
[0042]3)匹配串長度越短者優(yōu)先;
[0043]4)中文首字母搜索:當(dāng)搜索串長度大于等于目標(biāo)串長度時,目標(biāo)串為長者優(yōu)先;
[0044]5)英文搜索:當(dāng)搜索串長度小于目標(biāo)串長度時,目標(biāo)串為短者優(yōu)先。
[0045]相對于現(xiàn)有技術(shù),本發(fā)明所述的技術(shù)方案通過建立撥號數(shù)字與字母的對應(yīng)關(guān)系;讀取移動終端系統(tǒng)的聯(lián)系人數(shù)據(jù)并進(jìn)行緩存;提取聯(lián)系人的名稱以及號碼,分別將名稱以及號碼與撥號數(shù)字建立搜索關(guān)系;根據(jù)搜索框輸入的撥號數(shù)字,對聯(lián)系人的名稱及號碼進(jìn)行匹配搜索并在顯示框中顯示搜索結(jié)果,利用撥號搜索簡化了輸入及搜索過程,搜索操作快捷方便,且能根據(jù)優(yōu)先級排序顯示搜索結(jié)果,能夠滿足用戶的個性化需求。
[0046]為了充分地了解本發(fā)明的目的、特征和效果,以下將結(jié)合附圖對本發(fā)明的構(gòu)思、具體結(jié)構(gòu)及產(chǎn)生的技術(shù)效果作進(jìn)一步說明。
【附圖說明】
[0047]圖1是實施例一中移動終端的聯(lián)系人撥號搜索系統(tǒng)的模塊示意圖;
[0048]圖2是實施例一中移動終端的聯(lián)系人撥號搜索方法的流程圖;
[0049]圖3是實施例二中移動終端的聯(lián)系人撥號搜索系統(tǒng)的模塊示意圖;
[0050]圖4是實施例二中移動終端的聯(lián)系人撥號搜索方法的流程圖。
【具體實施方式】
[0051]下面將結(jié)合附圖以及具體實施方法來詳細(xì)說明本發(fā)明,在本發(fā)明的示意性實施及說明用來解釋本發(fā)明,但并不作為對本發(fā)明的限定。
[0052]實施例一
[0053]如圖1所示,一種移動終端的聯(lián)系人撥號搜索系統(tǒng),該系統(tǒng)包括:
[0054]建立撥號數(shù)字與字母的對應(yīng)關(guān)系的創(chuàng)建模塊;
[0055]讀取移動終端系統(tǒng)的聯(lián)系人數(shù)據(jù)并進(jìn)行緩存的讀取緩存模塊;
[0056]提取聯(lián)系人的名稱以及號碼,分別將名稱以及號碼與撥號數(shù)字建立搜索關(guān)系的轉(zhuǎn)化模塊;
[0057]根據(jù)搜索框輸入的撥號數(shù)字,對聯(lián)系人的名稱及號碼進(jìn)行匹配搜索并在顯示框中顯示搜索結(jié)果的搜索模塊,所述搜索模塊按照如下規(guī)則進(jìn)行搜索:
[0058]將聯(lián)系人的中文名稱轉(zhuǎn)化為拼音字母,并將拼音字母分別進(jìn)行全拼、首字母與音節(jié)混合、單純首字母的排列組合,
[0059]將所得的字母排列組合與撥號數(shù)字建立搜索關(guān)系,
[0060]根據(jù)搜索框輸入的撥號數(shù)字利用子串搜索算法對聯(lián)系人名稱及號碼進(jìn)行匹配搜索,給出初步的搜索結(jié)果。
[0061]如圖2所示,一種移動終端的聯(lián)系人撥號搜索方法,該方法包括以下步驟:
[0062]SlOl:建立撥號數(shù)字與字母的對應(yīng)關(guān)系;搜索時,英文字母與數(shù)字的對應(yīng)關(guān)系是:abc — 2,def — 3,ghi — 4,jkl — 5,mno — 6,prqs — 7,tuv — 8,wxyz — 90
[0063]S102:讀取移動終端系統(tǒng)的聯(lián)系人數(shù)據(jù)并進(jìn)行緩存;
[0064]S103:提取聯(lián)系人的名稱以及號碼,分別將名稱以及號碼與撥號數(shù)字建立搜索關(guān)系;
[0065]S104:根據(jù)搜索框輸入的撥號數(shù)字,對聯(lián)系人的名稱及號碼進(jìn)行匹配搜索并在顯示框中顯示搜索結(jié)果,所述匹配搜索按照如下規(guī)則進(jìn)行搜索:將聯(lián)系人的中文名稱轉(zhuǎn)化為拼音字母,并將拼音字母分別進(jìn)行全拼、首字母與音節(jié)混合、單純首字母的排列組合,將所得的字母排列組合與撥號數(shù)字建立搜索關(guān)系,根據(jù)搜索框輸入的撥號數(shù)字利用子串搜索算法對聯(lián)系人名稱及號碼進(jìn)行匹配搜索,給出初步的搜索結(jié)果。
[0066]以搜索”張韶涵”為例,”張韶涵”對應(yīng)的拼音字母為“Zhang Shao Han(94264 7426426) ”,移動終端中還包含有“章子怡”、”趙薇”,”楊利偉“等聯(lián)系人,其對應(yīng)的拼音字母分別為“Zhang Zi Yi (94264 94 94)”、“Zhang Wei (94264 934)”、”Yang Li Wei (9264 54934) “.
[0067]首先對輸入的首字符“Z”對應(yīng)的數(shù)字是“9”在字符串?dāng)?shù)據(jù)中進(jìn)行逐一匹配篩選出包含有“9”的字符串集{Zhang Shao Han (94264 7426 426)、Zhang Zi Yi (94264 94 94),,、“Zhao Wei (9426 934)、” Yang Li Wei (9264 54 934)};顯示框中顯示張韶涵、章子怡、趙薇、楊利偉的聯(lián)系人名稱和號碼的搜索結(jié)果;
[0068]然后對輸入的第二字符“h”對應(yīng)的數(shù)字是“4”在字符串集中進(jìn)行逐一匹配,篩選出包含有“94”的字符串集子字符串集{Zhang Shao Han(94264 7426426)、Zhang ZiYi (94264 94 94),,、“Zhao Wei (9426 934)};顯示框中顯示張韶涵、章子怡、趙薇、楊利偉的聯(lián)系人名稱和號碼的搜索結(jié)果;
[0069]然后對輸入的第三四五個字符“ang”對應(yīng)的數(shù)字是“264”在字符串集中進(jìn)行逐一匹配,篩選出包含有“94264”的字符串集子字符串集{Zhang Shao Han (94264 7426 426)、Zhang Zi Yi (94264 94 94)”};顯示框中顯示張韶涵、章子怡的聯(lián)系人名稱和號碼的搜索結(jié)果;
[0070]然后對輸入的第二字符“S”對應(yīng)的數(shù)字是“7”在字符串集中進(jìn)行逐一匹配,篩選出包含有“94264 7”的字符串集子字符串集{Zhang Shao Han (942647426 426)};顯示框中顯示張韶涵的聯(lián)系人名稱和號碼的搜索結(jié)果。
[0071]實施例二
[0072]如圖3所示,一種移動終端的聯(lián)系人撥號搜索系統(tǒng),包括:
[0073]用于讀取移動終端系統(tǒng)的聯(lián)系人數(shù)據(jù)并進(jìn)行緩存的讀取緩存模塊;
[0074]用于提取各聯(lián)系人的名稱以及號碼并分別將名稱和號碼轉(zhuǎn)化為數(shù)字?jǐn)?shù)據(jù),使用這些數(shù)字?jǐn)?shù)據(jù)建立起后綴搜索樹并緩存起來的轉(zhuǎn)化模塊;
[0075]用于根據(jù)搜索框輸入的數(shù)字在后綴搜索樹數(shù)據(jù)中進(jìn)行匹配搜索的搜索模塊;所述搜索模塊按照如下規(guī)則進(jìn)行搜索:首先對輸入的首字符對應(yīng)的數(shù)字在字符串?dāng)?shù)據(jù)中進(jìn)行逐一匹配,篩選出包含有首字符的字符串集;然后對輸入的第二字符在字符串集中進(jìn)行逐一匹配,篩選出包含有第二字符的子字符串集;以此類推,對后續(xù)輸