一种记录索引方法及装置的制作方法

文档序号:6470439阅读:163来源:国知局
专利名称:一种记录索引方法及装置的制作方法
技术领域
本发明涉及数据通讯领域,具体地说,涉及一种记录索引方法及装置。
背景技术
在手机软件领域,电话簿已经成为用户最常用的功能。为了提高用户查找 电话簿记录的速度,出现了很多电话簿查找方法,包括全字符或部分字符匹酉己、 或拼音首字母排序后进行索引。同时,在计算机数据库领域,为加速查找到所 需记录,已经有字段全内容和部分内容匹配、字段组合匹配等查找方法。
但是,发明人在实现本发明的过程中发现,由于现在的电话簿或计算机数 据库中常常存在不同语言的记录,现有的记录索引方法都没有考虑不同语言习
惯下的记录的排列顺序不同,例如采用中文的姓名记录一般是姓在前、名在后,
而采用英文的姓名记录一4殳是名(Firstname)在前、姓(Lastname)在后,对 于电话簿等数据库中的混合多种语言的名称姓名,不能按照不同国家语言习惯 快速的查找到所需记录,有时甚至由于造成混淆以致查找不到所需记录。

发明内容
本发明实施例提供一种记录索引方法及装置,可以在包括不同语言记录的 数据库中快速查找到所需记录。
本发明实施例提供的一种记录索引方法,包括
对数据库中各记录的名字段或姓字段的Unicode码进行判断,确定所述名 字段或姓字段的语言机制;根据所述名字段或姓字段的语言机制,结合所述名 字段或姓字段的语言机制的语言习惯,对数据库中的记录重新排序;在重新排 序后的记录中索引所需记录。一种记录索引装置,包括
判断模块,用于对数据库中的名字段或姓字段的Unicode码进行判断,确 定所述名字段的语言机制;排序模块,用于根据所述名字段或姓字段的语言机 制,结合所述名字段或姓字段的的语言机制的语言习惯,对数据库中的记录重 新排序;索引模块,用于在重新排序后的记录中索引所需记录。
本发明实施例通过对数据库中的名(First name )字段的Unicode (统一的 字符编码标准,采用双字节对字符进行编码)码的判断,确定该字段的语言机 制,再根据相应语言机制的语言习惯,对数据库中的记录重新排序,在重新排 序后的记录中索引所需的记录,可以实现在包括不同语言记录的数据库中快速 查找到所需记录。


图1为本发明方法实施例的流程示意图; 图2为本发明装置实施例的结构示意图。
具体实施例方式
下面结合附图详细说明本发明实施例的技术方案。 本发明提供的记录索引方法的实施例,如图l所示,包括 步骤101、对数据库中各记录的名(First name)字段的Unicode码进行判 断,确定所述名字段的语言机制。
步骤102、根据所述名字段的语言机制,结合所述名字段的语言机制的语 言习惯,对数据库中的记录重新排序。
例如,数据库中有名(Firstname)字段和姓(Lastname)字段,根据名字 段的Unicode码判断该名字段中的内容是什么语言,如果是与中文相似,姓在 前、名在后的语言习惯,则按照姓字段在前、名字段在后的规则拼接出姓名, 如果是与英文相似,名在前、姓在后的语言习惯,则按照名字段在前、姓字段 在后的规则拼接出姓名。然后将拼接后姓名重新排序,例如,中文按拼音,英文按字母,按照A-Z的字母顺序进行排列。
当然,也可以根据姓(Last name)字段的的Unicode码进行判断确定所述 姓字段的语言机制。
步骤103、在重新排序后的记录中索引所需记录。
具体在重新排序后的记录中索引的方式,可以采用二分查找,或者以及逐 级筛选的方法来索引所需记录。
在混合了中文和英文的数据库中,用户只需要^f艮据中文姓在前、名在后, 英文名在前、姓在后的语言习惯进行全字符匹配或首字母匹配,就可以快速的 查找到所需记录。对那些仅姓字段匹配或仅名字段匹配的记录可以显示在最后。
下面以电话簿为例,进一步说明本发明方法实施例的技术方案。
例如,电话簿中有以下几条混合不同语言的记录
First Name Last Name
Georg Ford
Frank Goethe
峰国 高
高河 付
Fred 范
Edward 熊
首先,对名(FirstName)字段的Unicode码进行判断,确定各名字段属于 哪种语言。然后按照所属语言相应的语言习惯对电话簿中的记录,按照中文拼 音和英文A-Z字母顺序,进行重新排序如下
Edward 熊
Frank Goethe
Fred 范
付 高河 高 峰国 GeorgFord再在重新排序后的记录中索引所需记录。例如,当输入F时,按照F的二 分查找方法先查找到第一个字段的首中文拼音或首英文字母为F的记录,如下 Frank Goethe Fred 范
付 高河
如果还想进一步精确查找的话,例如,查找第一个字段的首中文拼音或首 英文字母为F,第二个字段的首中文拼音或首英文字母为G的记录,则可以再 输入G,即输入"FG",在已经筛选出的第一个字段的首中文拼音或首英文字母 为F的记录中,匹配第二个字^:的首中文拼音或首英文字母是否为G,查找到
Frank Goethe
付 高河
在现实情况中,还可能存在一种情况,用户只记得名,或只记得姓,为了 进一步提供精确、人性化的快速索引记录的方法,在查找到的第一个字段首中 文拼音或首英文字母为F的记录后,追加第二个字段首中文拼音或首英文字母 为F的记录。例如,用户输入F时,按照F的二分查找方法先查找到第一个字 段或者第二个字段的首中文拼音或首英文字母为F的记录,如下
Frank Goethe
Fred 范
付 高河 +
高 峰国 GeorgFord
以上"+,,符合表示以下为追加的记录,当然也可以采用其他符号表示。
如果还想进一步精确查找的话,例如,查找第一个字段的首中文拼音或首 英文字母为F,第二个字段的首中文拼音或首英文字母为G的记录,或者第二 个字段的首中文拼音或首英文字母为F,第一个字段的首中文拼音或首英文字母为G的记录,则可以再输入G,即输入"FG",在已经筛选出的第一个字段或 者第二个字段的首中文拼音或首英文字母为F的记录中,匹配第二个字段或者 第一个字段的首中文拼音或首英文字母是否为G,查找到记录如下
Frank Goethe
付 高河
+
高 峰国
通过以上方法,可以进一步精确、快速,并且人性化的查找记录。 相应地,本发明实施例还提供了一种记录索引装置,包括 判断模块21,用于对数据库中的名(First name )字段或姓(Last name ) 字段的Unicode码进行判断,确定所述名字段的语言机制。
排序模块22,用于根据所述名字段或姓字段的语言机制,结合所述名字段 或姓字l殳的的语言机制的语言习惯,对数据库中的记录重新排序。 索引模块23,用于在重新排序后的记录中索引所需记录。 其中,排序模块22包括姓名拼接模块221,用于当名字段或姓字段是与 中文相似,姓在前、名在后的语言习惯,则按照姓字段在前、名字段在后的规 则拼接出姓名,当是与英文相似,名在前、姓在后的语言习惯,则按照名字段 在前、姓字段在后的规则拼接出姓名;排序子模块222,用于将拼接后的姓名, 按照中文拼音或英文字母A-Z的字母顺序进行重新排列。
索引模块23包括第一索引子模块,用于采用二分查找方法,或者以及逐 级筛选方法,在重新排序后的记录中查找所需记录。
所述第一索引子模块可以包括第二索引子模块,用于按照二分查找方法查 找到第 一个字段的首中文拼音或首英文字母符合要求的记录。所述第二索引子 模块,还可以用于按照二分查找方法查找到第 一个字段的首中文拼音或首英文 字母符合要求,并且第二个字段的首中文拼音或首英文字母符合要求的记录。
所述第一索引子模块也可以包括第三索引子模块,用于按照二分查找方法 查找到第一个字段或者第二个字段的首中文拼音或首英文字母符合要求的记录。所述第三索引子模块,还可以用于按照二分查找方法查找到第一个字段的 首中文拼音或首英文字母符合要求,并且第二个字段的首中文拼音或首英文字 母符合要求的记录,以及,或者第二个字段的首中文拼音或首英文字母符合要 求,并且第一个字段的首中文拼音或首英文字母符合要求的记录。
本发明实施例通过对数据库中的名(First name)字段的Unicode (统一的 字符编码标准,采用双字节对字符进行编码)码的判断,确定该字段的语言机 制,再根据相应语言机制的语言习惯,对数据库中的记录重新排序,在重新排 序后的记录中索引所需的记录,可以实现在包括不同语言记录的数据库中快速 查找到所需记录。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发 明可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但 很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质 上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算 机软件产品存储在可读取的存储介质中,如计算机的软盘,硬盘或光盘等,包 括若干指令用以使得一 台设备执行本发明各个实施例所述的方法。
以上所述,仅为本发明较佳的具体实施方式
,但本发明的保护范围并不局 限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易 想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护 范围应该以权利要求的保护范围为准。
权利要求
1、一种记录索引方法,其特征在于,包括对数据库中各记录的名字段或姓字段的unicode码进行判断,确定所述名字段或姓字段的语言机制;根据所述名字段或姓字段的语言机制,结合所述名字段或姓字段的语言机制的语言习惯,对数据库中的记录重新排序;在重新排序后的记录中索引所需记录。
2、 根据权利要求1所述的方法,其特征在于,所述根据名字段或姓字段的 语言机制,结合所述名字段或姓字段的语言机制的语言习惯,对数据库中的记 录重新排序包括当名字段或姓字段是与中文相似,姓在前、名在后的语言习惯,则按照姓 字段在前、名字段在后的规则拼接出姓名,当是与英文相似,名在前、姓在后 的语言习惯,则按照名字段在前、姓字段在后的规则拼接出姓名;将拼接后的姓名,按照中文拼音或英文字母A-Z的字母顺序进行重新排列。
3、 根据权利要求1所述的方法,其特征在于,在重新排序后的记录中索引 所需记录包括采用二分查找方法,或者以及逐级筛选方法,在重新排序后的记录中查找 所需i己录。
4、 根据权利要求3所述的方法,其特征在于,所述采用二分查找方法,或 者以及逐级筛选方法,在重新排序后的记录中查找所需记录包括按照二分查找方法查找到第一个字段的首中文拼音或首英文字母符合要求 的记录;或者,按照二分查找方法查找到第一个字段的首中文拼音或首英文字 母符合要求,并且第二个字段的首中文拼音或首英文字母符合要求的记录。
5、 根据权利要求3所述的方法,其特征在于,所述采用二分查找方法,或 者以及逐级筛选方法,在重新排序后的记录中查找所需记录包括按照二分查找方法查找到第一个字段或者第二个字段的首中文拼音或首英文字母符合要求的记录;或者,按照二分查找方法查找到第一个字段的首中文拼音或首英文字母符合要求,并且第二个字段的首中文拼音或首英文字母符合 要求的记录,以及,或者第二个字段的首中文拼音或首英文字母符合要求,并 且第 一个字段的首中文拼音或首英文字母符合要求的记录。
6、 一种记录索引装置,其特征在于,包括判断模块,用于对数据库中的名字段或姓字段的Unicode码进行判断,确 定所述名字段的语言机制;排序模块,用于根据所述名字段或姓字段的语言机制,结合所述名字段或 姓字段的的语言机制的语言习惯,对数据库中的记录重新排序;索引模块,用于在重新排序后的记录中索引所需记录。
7、 根据权利要求6所述的装置,其特征在于,所述排序模块包括 姓名拼接模块,用于当名字段或姓字段是与中文相似,姓在前、名在后的语言习惯,则按照姓字段在前、名字段在后的规则拼接出姓名,当是与英文相 似,名在前、姓在后的语言习惯,则按照名字段在前、姓字段在后的规则拼接 出姓名;排序子模块,用于将拼接后的姓名,按照中文拼音或英文字母A-Z的字母 顺序进行重新排列。
8、 才艮据权利要求6所述的装置,其特征在于,所述索引模块包括第一索 引子模块,用于采用二分查找方法,或者以及逐级筛选方法,在重新排序后的 记录中查找所需记录。
9、 根据权利要求8所述的装置,其特征在于,所述第一索引子模块包括 第二索引子模块,用于按照二分查找方法查找到第一个字段的首中文拼音或首 英文字母符合要求的记录;或者,按照二分查找方法查找到第一个字l殳的首中 文拼音或首英文字母符合要求,并且第二个字^:的首中文拼音或首英文字母符 合要求的记录。
10、 根据权利要求所述的装置,其特征在于,所述第一索引子模块包括第三索引子模块,用于按照二分查找方法查找到第一个字段或者第二个字段的首中文拼音或首英文字母符合要求的记录;或者,按照二分查找方法查找到第一个字段的首中文拼音或首英文字母符合要求,并且第二个字段的首中文拼音 或首英文字母符合要求的记录,以及,或者第二个字段的首中文拼音或首英文 字母符合要求,并且第一个字段的首中文拼音或首英文字母符合要求的记录。
全文摘要
本发明实施例公开了一种记录索引方法及装置,方法包括对数据库中各记录的名字段或姓字段的unicode码进行判断,确定所述名字段或姓字段的语言机制;根据所述名字段或姓字段的语言机制,结合所述名字段或姓字段的语言机制的语言习惯,对数据库中的记录重新排序;在重新排序后的记录中索引所需记录。可以实现在包括不同语言记录的数据库中快速查找到所需记录。
文档编号G06F17/30GK101436203SQ20081021836
公开日2009年5月20日 申请日期2008年12月10日 优先权日2008年12月10日
发明者房增华 申请人:深圳华为通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1