具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例通过在用户需要输入生僻字等不清楚待输入汉字的拼音时,通过将待输入汉字拆成多个常用汉字后,通过输入该多个常用汉字的拼音完成待输入汉字的拼音输入,在接收到输入的拼音字符串时,将其划分为一个或多个音节字符串,根据多个音节字符串与候选字的映射关系,输出多个音节字符串对应的候选字,从而实现了汉字的输入,提高了汉字的输入效率和用户体验。
本发明实施例提供了一种汉字的拼音输入方法,所述方法包括下述步骤:
按音节将接收到的拼音字符串划分为一个或多个音节字符串;
提取从拼音字符串中划分出的首字符串,判断所述首字符串是否为预设的标识符;
当所述首字符串为预设的标识符时,根据划分出的一个或多个音节字符串与候选字的映射关系,输出多个音节字符串对应的候选字。
本发明实施例还提供了一种汉字的拼音输入系统,所述系统包括:
字符串划分单元,用于按音节将接收到的拼音字符串划分为一个或多个音节字符串;
首字符串判断单元,用于提取从拼音字符串中划分出的首字符串,判断所述首字符串是否为预设的标识符;以及
候选字输出单元,用于当首字符串为预设的标识符时,根据划分出的一个或多个音节字符串与候选字的映射关系,输出多个音节字符串对应的候选字。
本发明实施例通过在用户需要输入生僻字等不知道待输入汉字的拼音时,通过将待输入汉字拆成多个常用汉字后,通过输入该多个常用汉字的拼音完成待输入汉字的拼音输入,在接收到输入的拼音字符串时,将其划分为一个或多个音节字符串,根据多个音节字符串与候选字的映射关系,输出多个音节字符串对应的候选字,从而实现了汉字的输入,提高了汉字的输入效率和用户体验。
以下结合具体实施例对本发明的具体实现进行详细描述:
实施例一:
图1示出了本发明第一实施例提供的汉字的拼音输入方法的实现流程,详述如下:
在步骤S101中,按音节将接收到的拼音字符串划分为一个或多个音节字符串。
在本发明实施例中,接收到的拼音字符串可能是全拼字符串或者简拼字符串或者是不完整的全拼字符串,接收到的拼音字符串可以来自键盘也可以是非键盘,在此不用以限制本发明。在接收到拼音字符串后,将接收到的拼音字符串按照音节进行划分,从而将接收到的拼音字符串划分为一个或多个音节字符串,划分出的字符串可能是一个完整的音节或不完整的音节。
在步骤S102中,提取从拼音字符串中划分出的首字符串,判断首字符串是否为预设的标识符。
在发明实施例中,通过步骤S101中将接收到的拼音字符串划分为一个或多个音节字符串后,提取划分出的音节字符串的首字符串,判断首字符串是否为预设的标识符,该标识符表征从接收到的字符串划分出来的一个或多个音节字符串为一个待输入汉字被拆分各部分的拼音,为了与音节区分开来,预先设置的标识符不能为音节字符串,可以为u、v或数字等非音节字符串。
在步骤S103中,当首字符串为预设的标识符时,根据划分出的一个或多个音节字符串与候选字的映射关系,输出多个音节字符串对应的候选字。
在本发明实施例中,当首字符串为预设的标识符时,说明接收到的拼音字符串为一个汉字的各个组成部分的拼音字符串,各个组成部分可以是偏旁部首,也可以是单个常用汉字,当组成部分是偏旁部首时,该偏旁部的拼音可以为该偏旁部首作为单个汉字的拼音,例如“亻”的拼音为“ren”,“扌”的拼音为“ti”。当接收到的拼音字符串为一个汉字的各个组成部分的拼音字符串时,根据划分出的一个或多个音节字符串与候选字的映射关系,输出多个音节字符串对应的候选字,输出的候选字可以按照字频由大到小的顺序排列,字频可以根据用户在一段时间选择输入的频率来统计,也可以根据国家标准局1981年公布的《信息交换用汉字编码字符集基本集》中记录的一级字库、二级字库的顺序进行顺序排列输出。
在本发明实施例中,将接收到的拼音字符串按照音节将其划分为一个汉字的各个组成部分的拼音字符串,各个组成部分可以是偏旁部首,也可以是单个常用汉字,再根据划分出的一个或多个音节字符串与候选字的映射关系,输出多个音节字符串对应的候选字,使得用户无需花费大量时间记忆汉字拼音,用户只需了解常用汉字的拼音就可实现所有汉字的输入,同时也不会增加拼音字符串的输入数量,从而提高了汉字的输入效率和用户体验,进一步扩大了拼音输入法的使用范围。
实施例二:
在本发明实施例中,通过在预先建立的音节字符串与通过该音节字符串扩展的全部音节字符串之间的关系对照表中查找划分出的音节字符串中每个字符串对应的所有音节字符串,将查找到的每个字符串对应的所有音节字符串进行组合,对照预先建立的音节字符串与候选字的映射表,输出所有音节字符串对应的候选字,从而进一步简化了需要输入的拼音字符串,提高了用户体验。
图2示出了本发明第二实施例提供的汉字的拼音输入方法的实现流程,详述如下:
在步骤S201中,按音节将接收到的拼音字符串划分为一个或多个音节字符串。
在本发明实施例中,接收到的拼音字符串可能是全拼字符串或者简拼字符串或者是不完整的全拼字符串,接收到的拼音字符串可以来自键盘也可以是非键盘,在此不用以限制本发明。将接收到的拼音字符串按照音节进行划分,从而将接收到的拼音字符串划分为一个或多个音节字符串,划分出的字符串可能是一个完整的音节或不完整的音节。
在步骤S202中,提取从拼音字符串中划分出的首字符串。
在步骤S203中,判断首字符串是否为预设的标识符,是则执行步骤S204,否则执行步骤S206。
在发明实施例中,通过步骤S201中将接收到的拼音字符串划分为一个或多个音节字符串后,提取划分出的音节字符串的首字符串,判断首字符串是否为预设的标识符,该标识符表征从接收到的字符串划分出来的一个或多个音节字符串为一个待输入汉字被拆分各部分的拼音,为了与音节区分开来,预先设置的标识符不能为音节字符串,可以为u、v或数字等非音节字符串。
在步骤S204中,当首字符串为预设的标识符时,在预先建立的音节字符串与通过该音节字符串扩展的全部音节字符串之间的关系对照表中查找划分出的音节字符串中每个字符串对应的所有音节字符串。
在本发明实施例中,当首字符串为预设的标识符时,说明接收到的拼音字符串为一个汉字的各个组成部分的拼音字符串,各个组成部分可以是偏旁部首,也可以是单个常用汉字,当组成部分是偏旁部首时,该偏旁部的拼音可以为该偏旁部首作为单个汉字的拼音,例如“亻”的拼音为“ren”,“扌”的拼音为“ti”。当接收到的拼音字符串为一个汉字的各个组成部分的拼音字符串时。
进一步地,应预先建立音节字符串与通过该音节字符串扩展的全部音节字符串之间的关系对照表,例如,图3a和图3b所示的音节字符串与通过该音节字符串扩展的全部音节字符串之间的关系对照表。在图3a中,当划分出的音节字符中有一个音节字符串为a时,则音节a的扩展音节包括音节ai、an、ang和ao,在图3b中,当划分出的音节字符中有一个音节字符串为de时,则音节de的扩展音节包括音节dei、den和deng。
在步骤S205中,将查找到的每个字符串对应的所有音节字符串进行组合,对照预先建立的音节字符串与候选字的映射表,输出所有音节字符串对应的候选字。
在本发明实施例中,当通过步骤S204查找划分出的音节字符串中每个字符串对应的所有音节字符串后,将查找到的每个字符串对应的所有音节字符串进行组合,例如,若划分的音节字符串包括a和de时,查找到音节a的所有扩展音节为ai、an、ang和ao,de的所有扩展音节为dei、den和deng,则所有音节字符串组合后包括:ai dei、ai den、ai deng、an dei、an den、an deng、ang dei、ang den、ang deng、ao dei、ao den和ao deng。在得到组合后的音节音符串后,将组合后的音节字符串与预先构建的音节字符串与候选字的映射表进行对照,输出所有与组合音节字符串对应的候选字。
在步骤S206中,当首字符串不为预设的标识符时,在预先建立的音节字符串与通过该音节字符串扩展的全部音节字符串之间的关系对照表中查找划分出的音节字符串对应的所有音节字符串。
在步骤S207中,对照预先建立的音节字符串与候选词的映射表,输出所有音节字符串对应的候选词。
在本发明实施例中,当首字符串不为预设的标识符时,则对划分出的音节字符串每个字符串进行扩展后,进行组合,将组合后的音节字符串与预先建立的音节字符串与候选词的映射表进行对照,输出所有组合后的音节字符串对应的候选词。
实施例三:
在本发明实施例中,通过在查找划分出的一个或多个音节字符串与候选字的映射关系时限定候选字被映射成音节字符串的数目,从而缩小候选字的查找范围,提高汉字的输入效率。
图4示出了本发明第三实施例提供的汉字的拼音输入方法的实现流程,详述如下:
在步骤S401中,按音节将接收到的拼音字符串划分为一个或多个音节字符串。
在步骤S402中,提取从拼音字符串中划分出的首字符串。
在步骤S403中,判断首字符串是否为预设的标识符,当首字符串为预设的标识符时,执行步骤S404,否则执行步骤S408。
在步骤S404中,当首字符串为预设的标识符时,在预先建立的音节字符串与通过该音节字符串扩展的全部音节字符串之间的关系对照表中查找划分出的音节字符串中每个字符串对应的所有音节字符串。
在步骤S405中,获取在步骤S401中划分出的音节字符串的数目。
在步骤S406中,在预先建立的音节字符串与候选字的映射表的映射记录中查找包含与获取划分出的音节字符串的数目相同的音节字符串的映射记录。
在本发明实施例中,预先建立的音节字符串与候选字的映射表的每一条映射记录中除了保存候选字,候选字对应的音节字符串,还包括音节字符串的数目,在查找时,根据每条记录保存的音节字符串的数目,先检索出与获取划分出的音节字符串的数目相同的音节字符串的映射记录,最后在检索出的映射记录中进行候选字的查找。例如,如图5所示的音节字符串与候选字的映射记录,该映射记录有四个字段,每个字段用十六进制表示,字段1用来保存汉字,占两个字节,字段2用于存储汉字的组成部分的数目(两个组成部分),占一个字节,字段3占四个字节,用于保存字段1中汉字的两个组成部分的音节字符串(拼音串)。
在步骤S407中,将查找到的每个字符串对应的所有音节字符串进行组合,将组合后的音节字符串与查找到的映射记录进行对照,输出组合后的音节字符串对应的候选字。
在步骤S408中,当所述首字符串不为预设的标识符时,在预先建立的音节字符串与通过该音节字符串扩展的全部音节字符串之间的关系对照表中查找划分出的音节字符串对应的所有音节字符串。
在步骤S409中,对照预先建立的音节字符串与候选词的映射表,输出所有音节字符串对应的候选词。
实施例四:
图6a、图6b示出了本发明第四实施例提供的汉字的拼音输入方法的实例。
在本发明实施例中,用字符串u作为标识符,表示接收到的拼音字符串为一个汉字的各个组成部分的拼音字符串,接收到的拼音字符串为urenren,系统根据音节将其划分为u ren ren,进而获取与音节字符串ren ren存在映射关系的候选字进行显示输出,例如,图6a中的从、仞、俎等。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于一计算机可读取存储介质中,所述的存储介质,如ROM/RAM、磁盘、光盘等。
实施例五:
图7示出了本发明第五实施例提供汉字的拼音输入系统的结构,为了便于说明,仅示出了与本发明实施例相关的部分。
字符串划分单元71按音节将接收到的拼音字符串划分为一个或多个音节字符串。
在本发明实施例中,接收到的拼音字符串可能是全拼字符串或者简拼字符串或者是不完整的全拼字符串,接收到的拼音字符串可以来自键盘也可以是非键盘,在此不用以限制本发明。将接收到的拼音字符串按照音节进行划分,从而将接收到的拼音字符串划分为一个或多个音节字符串,划分出的字符串可能是一个完整的音节或不完整的音节。
首字符串判断单元72提取从拼音字符串中划分出的首字符串,判断首字符串是否为预设的标识符。
在发明实施例中,通过将接收到的拼音字符串划分为一个或多个音节字符串后,提取划分出的音节字符串的首字符串,判断首字符串是否为预设的标识符,该标识符表征从接收到的字符串划分出来的一个或多个音节字符串为一个待输入汉字被拆分各部分的拼音,为了与音节区分开来,预先设置的标识符不能为音节字符串,可以为u、v或数字等非音节字符串。
候选字输出单元73当首字符串为预设的标识符时,根据划分出的一个或多个音节字符串与候选字的映射关系,输出多个音节字符串对应的候选字。
在本发明实施例中,当首字符串为预设的标识符时,说明接收到的拼音字符串为一个汉字的各个组成部分的拼音字符串,各个组成部分可以是偏旁部首,也可以是单个常用汉字,当组成部分是偏旁部首时,该偏旁部的拼音可以为该偏旁部首作为单个汉字的拼音,例如“亻”的拼音为“ren”,“扌”的拼音为“ti”。当接收到的拼音字符串为一个汉字的各个组成部分的拼音字符串时,根据划分出的一个或多个音节字符串与候选字的映射关系,输出多个音节字符串对应的候选字。
第二字符串查找单元74当首字符串不为预设的标识符时,在预先建立的音节字符串与通过该音节字符串扩展的全部音节字符串之间的关系对照表中查找划分出的音节字符串对应的所有音节字符串。
候选词输出单元75对照预先建立的音节字符串与候选词的映射表,输出所有音节字符串对应的候选词。
在具体实施过程中,候选字输出单元73包括第一字符串查找单元731和第一输出子单元732,如图8所示,其中:
第一字符串查找单元731,用于当首字符串为预设的标识符时,在预先建立的音节字符串与通过该音节字符串扩展的全部音节字符串之间的关系对照表中查找划分出的音节字符串中每个字符串对应的所有音节字符串;以及
第一输出子单元732,用于将查找到的每个字符串对应的所有音节字符串进行组合,对照预先建立的音节字符串与候选字的映射表,输出所有音节字符串对应的候选字。
更进一步地,第一输出子单元732可以由字符串数目获取单元、映射记录查找单元以及第二输出子单元,其中:
字符串数目获取单元获取划分出的音节字符串的数目,映射记录查找单元在预先建立的音节字符串与候选字的映射表的映射记录中查找包含与获取划分出的音节字符串的数目相同的音节字符串的映射记录,第二输出子单元将查找到的每个字符串对应的所有音节字符串进行组合,将组合后的音节字符串与查找到的映射记录进行对照,输出组合后的音节字符串对应的候选字。
本发明实施例通过在用户需要输入生僻字等无法知道待输入汉字的拼音时,通过将待输入汉字拆成多个常用汉字后,通过输入该多个常用汉字的拼音完成待输入汉字的拼音输入,在接收到输入的拼音字符串时,将其划分为一个或多个音节字符串,根据多个音节字符串与候选字的映射关系,输出多个音节字符串对应的候选字,从而实现了汉字的输入,提高了汉字的输入效率和用户体验。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。