專利名稱:利用漢語拼音聲母查詢中文姓名的方法
技術領域:
本發明涉及一種利用漢語拼音聲母查詢中文姓名的方法,特別是指一種利用漢語拼音的聲母組合,在記載有中文姓名的數據文件中迅速準確查找定位目標姓名的方法。
一般中文平臺的用戶通訊簿或數據庫中聯系人的姓名為中文姓名,中文姓名常用的漢字有幾千個,如果利用拼音或部首等傳統方法檢索中文姓名,其速度很慢。姓名的輸入通常需要輸入2-3個漢字,再加上PDA手寫識別所花費的時間、挑選重碼漢字所花費的時間,檢索中文姓名的效率一般較低;在操作中,用戶需要輸入的信息量大,操作點擊的次數多,所以操作不方便。如果按照姓氏進行查詢,其速度比傳統的查詢方法有了一定提高,但由于要在屏幕中挑選合適的“姓”和“姓名”,也增加了查詢的時間;并且仍然存在由用戶進行搜索的缺點。
通過對大量的隨機姓名樣本進行統計可以發現一般姓氏的姓名,只需要利用三個漢語拼音聲母進行查詢就能準確定位到需要找到的姓名;對于具有特別常用的姓氏(如張、王、李等)的姓名的重復率稍高,但三個漢語拼音聲母的查詢結果一般也只有3-5個,前兩個漢語拼音聲母的查詢結果一般也不會超過10個。
因此,如果利用漢語拼音聲母查詢漢字姓名,用戶通過三筆輸入即可得出查詢結果,并且在PDA顯示屏上僅需一屏也足以顯示全部的查詢結果,不用翻屏;由此,可以極大地提高查詢的速度,使漢字姓名的查詢操作變得簡便。
本發明的主要目的在于提供一種利用漢語拼音聲母查詢中文姓名的方法,通過降低漢字姓名查詢結果的重復率,迅速定位查詢目標,提高查詢效率,克服傳統查詢方法的不足,實現對中文姓名的快速檢索。
本發明的目的是通過如下的技術方案實現的。
所述的支持聲母查詢的數據結構中至少包括按照拼音排序的漢字和/或與聲母相對應的漢字。
所述的支持聲母查詢的數據結構通過如下的步驟建立1、對于按照拼音進行排序的漢字庫,查找其漢字內碼的區段;2、然后,將該漢字內碼區段的邊界值記入數組。
支持聲母查詢的數據結構的建立還包括為漢字庫中的漢字建立聲母索引列表,并將漢字和聲母一一對應。
所述的排序的順序為依次從字母A到字母Z。
所述的漢字庫為國家標準漢字庫。
所述的姓名索引文件在保存姓名的同時還保存有該姓名所對應的聲母信息。
所述的通過姓名索引文件從數據中獲取中文姓名的方法為將用戶輸入的聲母,在姓名索引文件中進行匹配,然后獲得其所對應記錄的標識信息和數據偏移量,最后根據該偏移量從數據中讀取姓名記錄。
將用戶輸入的聲母在姓名索引文件中進行匹配的是通過漢字庫內碼二分定位的方法進行的。
所述的數據為存儲有姓名信息的數據文件或數據庫。
本發明利用漢語拼音聲母查詢中文姓名的方法,通過降低漢字姓名查詢結果的重復率,迅速定位查詢目標,提高了查詢的效率,克服了傳統查詢方法的不足,實現了對中文姓名的快速檢索。
以下結合實施例對本發明作進一步的詳細說明。
在查找漢字內碼的區段時,可采用從字母A到字母Z的順序進行查找。
在向數據文件中存儲中文姓名時,要同時建立的一與之相應的姓名索引文件,該姓名索引文件在保存姓名的同時,還保存該姓名所對應的聲母信息。
當從數據文件中檢索或者獲取中文姓名時,首先將用戶輸入的聲母在姓名索引文件中進行匹配;然后,進一步獲取該記錄的標識信息和數據偏移量,最后,再根據該偏移量的值從數據中讀取輸入的聲母所對應的姓名記錄。
在從數據中讀取姓名記錄時,可以采用內碼二分定位的方法定位一個漢字的聲母。
由于中文姓名的聲母的重復率并不高,所以利用聲母的查詢方法能夠大大提高查詢的效率,同時減少了查詢所需的操作復雜度。
權利要求
1.一種利用漢語拼音聲母查詢中文姓名的方法,其特征在于利用支持聲母查詢的數據結構,通過姓名索引文件從數據中獲取中文姓名。
2.根據權利要求1所述的利用漢語拼音聲母查詢中文姓名的方法,其特征在于所述的支持聲母查詢的數據結構中至少包括按照拼音排序的漢字和/或與聲母相對應的漢字。
3.根據權利要求2所述的利用漢語拼音聲母查詢中文姓名的方法,其特征在于所述的支持聲母查詢的數據結構通過如下的步驟建立a、對于按照拼音進行排序的漢字庫,查找其漢字內碼的區段;b、然后,將該漢字內碼區段的邊界值記入數組。4、根據權利要求2所述的利用漢語拼音聲母查詢中文姓名的方法,其特征在于所述的支持聲母查詢的數據結構的建立還包括為漢字庫中的漢字建立聲母索引列表,并將漢字和聲母一一對應。
5.根據權利要求3所述的利用漢語拼音聲母查詢中文姓名的方法,其特征在于所述的排序順序為依次從字母A到字母Z。
6.根據權利要求3或4所述的利用漢語拼音聲母查詢中文姓名的方法,其特征在于所述的漢字庫為國家標準漢字庫。
7.根據權利要求1所述的利用漢語拼音聲母查詢中文姓名的方法,其特征在于所述的姓名索引文件在保存姓名的同時還保存有該姓名所對應的聲母信息。
8.根據權利要求1所述的利用漢語拼音聲母查詢中文姓名的方法,其特征在于所述的通過姓名索引文件從數據中獲取中文姓名的方法為將用戶輸入的聲母,在姓名索引文件中進行匹配,然后獲得其所對應記錄的標識信息和數據偏移量,最后根據該偏移量從數據中讀取姓名記錄。
9.根據權利要求8所述的利用漢語拼音聲母查詢中文姓名的方法,其特征在于將用戶輸入的聲母在姓名索引文件中進行匹配的是通過漢字庫內碼二分定位的方法進行的。
10.根據權利要求1或8所述的利用漢語拼音聲母查詢中文姓名的方法,其特征在于所述的數據為存儲有姓名信息的數據文件或數據庫。
全文摘要
一種利用漢語拼音聲母查詢中文姓名的方法,利用支持聲母查詢的數據結構,通過姓名索引文件從數據中獲取中文姓名,該支持聲母查詢的數據結構中至少包括按照拼音排序的漢字和/或與聲母相對應的漢字;本發明利用漢語拼音聲母查詢中文姓名的方法,通過降低漢字姓名查詢結果的重復率,迅速定位查詢目標,提高了查詢的效率,克服了傳統查詢方法的不足,實現了對中文姓名的快速檢索。
文檔編號G06F17/30GK1403962SQ0113117
公開日2003年3月19日 申請日期2001年9月5日 優先權日2001年9月5日
發明者劉慧峰, 史敬威, 何君艦, 梁小霞, 劉曉煒 申請人:聯想(北京)有限公司