一种通用的集中处理重码汉字的方法

文档序号:6601543阅读:396来源:国知局
专利名称:一种通用的集中处理重码汉字的方法
技术领域
本发明涉及一种重码汉字输入方法以及与此相关的重码汉字处理方法,这种方法适用于通过汉字编码进行汉字输入的计算机程序设计中。
汉字输入是计算机汉字信息处理中的一个重要环节,通常采用小键盘汉字编码输入方法。由于汉字数量多,编码中往往遇到重码,即一个代码对应一个以上的汉字,当遇到重码时就不能根据编码唯一地确定汉字,还需要进一步处理重码。绝大多数汉字编码都有重码,有重码就会影响输入速度,重码率越高影响越明显。怎样处理重码就成为汉字输入中的关键技术,重码处理得好坏直接影响汉字输入的效率。
通常采用以下三种方法处理重码。第一种方法就是通过人机对话选择汉字,当遇到重码时,提示全部或部分重码汉字,根据每个汉字的提示序号按键选择。这种方法简单,但重码多时要反复地选择汉字,影响了汉字输入速度。第二种方法是在词组中确定汉字,输入词组第一个汉字的代码时,如果遇到重码,不必选择,接着输入第二个汉字的代码,即使再遇到重码也不必选择,能够在词组中唯一地确定这两个汉字。前一个重码汉字由后一个汉字确定,后一个重码汉字由前一个汉字确定,很少需要人机对话选择。这种方法比较方便,也可以提高输入速度,但是它对不能组词的汉字无能为力,而且有时侯也有重码的情况,还需要通过人机对话再选择。第三种方法通过增加编码规则减少重码。编码规则越多,重码出现的越少,重码少可以提高输入速度,但是这种处理方法由于增加了编码规则,使编码难以掌握,使用起来比较困难。具体操作中一般把三种方法结合使用,在编码中增加一些规则,降低重码率;在输入汉字时采用词组输入,用词组确定部分重码汉字;余下的重码汉字用人机对话方法处理。即使这样,现有的重码汉字处理方法还是不能方便、快速地输入重码汉字。
本发明提供的集中处理重码汉字的方法可以很好地解决汉字输入中的重码问题,利用这种方法可以方便、快速地输入重码汉字。
处理重码汉字是指区分重码汉字和非重码汉字,通过各种方法正确地选择和输入重码汉字。
集中处理重码汉字的基本思路是分离汉字输入操作和重码处理操作,在输入汉字时遇到重码不必马上选择,而是先输入一个代表汉字,并且给这个代表汉字加上重码标识,这个重码标识用来区别重码汉字和非重码汉字。输入若干汉字之后,再把全部带重码标识的汉字集中到一起统一处理。这种方法的优点在于实现了重码汉字的盲打输入,即使有较多的重码也能象没有重码一样输入,简化了汉字输入操作,加快了输入速度。
为了把重码汉字集中到一起处理,首先要区分重码汉字和非重码汉字,重码汉字要进一步处理,非重码汉字就不需要再处理。提供了下面两种区分重码汉字的方法。
(1)根据重码标识区别重码汉字和非重码汉字在汉字内部码中设置一个重码标识位,或者设置一个重码标识字节,利用这个标识区别重码汉字和非重码汉字。下面以通常采用的二字节最高位均为1的汉字内部码为例说明。把内部码第一字节的最高位作为汉字标识位,把第二字节的最高位作为重码标识位。当第一字节的最高位置1时,表明当前字符和下一个字符构成一个汉字的内部码。当第二字节的最高位置1时,表示这个汉字不是重码汉字,或者是不需要再选择的重码汉字;当该位为0时,表示这个汉字是重码汉字,而且这个汉字还没有选定。
在具体实施时,预先从每一组重码汉字中选出一个代表字,这个代表字是这一组重码汉字中使用频度最高的汉字,并制作一张重码索引表,根据这张索引表可以从代表汉字查到对应的全部重码汉字,也可以从某一个重码汉字查到代表重码字和其余的重码汉字。输入重码汉字时,先输入这组重码字中的代表重码字,并给这个代表重码字加上重码标识,即内部码第二字节的最高位为0,以区别于第二字节的最高位为1的非重码汉字。待输入完一个句字,或一段文字,或整个文章后,再根据重码标识查找重码汉字,利用重码索引表进行重码处理。为了这个任务要设计一段程序,从某一位置开始测试汉字内部码第二字节的最高位,判别是否有重码标识,如果该位已经置1,表明这个汉字不是重码汉字,不需要重码处理,继续测试下一个汉字内部码第二字节的最高位;如果该位是0,表明这个汉字是代表重码字,需要进行重码处理,根据重码索引表找到其它重码汉字,利用后面介绍的重码汉字处理方法进行处理。
(2)利用重码索引表区别重码汉字和非重码汉字本发明还提供了一种不必加重码标识便可以区别重码汉字和非重码汉字的方法。输入重码汉字时不必马上选择,临时输入一个使用频度最高的代表重码字,不必给这个代表字加上重码标识,它的内部码结构与非重码汉字的内部码结构完全一致。集中处理重码汉字时,不是根据重码标识判别是否为重码字,而是根据重码索引表判别当前测试的汉字是否为代表重码字。如果在代表重码字表中有这个汉字,说明这个汉字就是代表重码字,需要进行重码处理,否则不是重码字,不必进行重码处理。区分出重码汉字和非重码汉字之后,利用后面介绍的处理重码汉字的方法进行处理。
用拼音码为例说明重码索引表的结构。有三个相互关联的数据表(也可以把三个数据表合并成一个数据表),三个数据表分别提供代码、代表重码字、对应重码字的信息,构成一个完整的重码索引表。基本结构如下代码代表重码字对应重码字a阿啊呵吖锕腌嗄ai 爱埃碍哀矮挨哎…an 安按案暗岸氨胺…… ………代码是指根据一定编码规则产生的汉字输入码,代表重码字就是一组重码字中使用频度最高的汉字,对应重码字是一组重码字中除了代表重码字之外的其余重码字。三个表之间有内在的联系,代码与代表重码字一一对应,从代码或代表重码字可以查到对应重码字,从对应重码字也可以查到代表重码字。
现有的汉字编码输入方法通常一次性输入重码汉字,遇到重码汉字时用人机对话方法选定之后输入。集中处理重码汉字的方法分两个步骤输入一个重码汉字。第一步输入代表重码字,此时不必看屏选字,即使有很多重码也可以盲打输入,提高了输入速度。第二步把重码汉字集中到一起统一处理,处理重码时用下面介绍的方法方便、快速地确定所要输入的重码汉字。分两步输入一个重码汉字减少了选择重码汉字的重复操作,比一次性输入一个汉字更方便、更快速,在输入大量文字时这个优点表现得更加明显。
在识别重码、确定汉字时可以使用以下5种处理重码汉字的方法。
(1)智能处理重码汉字一个重码汉字可以根据其所在的语言环境确定,最简单的实现方法是根据这组重码汉字与前后汉字的组词情况来确定应该选择的汉字。本发明提供的智能处理重码汉字的方法就是根据词组和语言环境自动选择重码汉字。具体方法如下重码汉字处理程序根据重码标识或重码索引表自动识别重码汉字。当遇到一个汉字时,检测这个汉字的内部码是否带有重码标识,即检测汉字内部码的第二字节的最高位是否为0,如果为0,表明这个汉字是代表重码汉字。也可以通过重码索引表判断是否为代表重码字,如果是代表重码字,就把它当做重码汉字处理。当判定这个汉字为重码汉字之后,再取前一个汉字和后一个汉字,判别前后汉字是否为重码汉字,如果前一个汉字或后一个汉字是重码汉字,则根据重码索引表查到其对应重码字。然后,根据一个词组数量在20000个以上的词库检测组词情况。首先检测前一个汉字与正在处理的重码汉字能否构成词组,要对一组重码字中的每一个汉字都检测一次,并记录是否能够组成词组。然后用同样的方法检测后一个汉字与正在处理的重码汉字能否构成词组,要对一组重码字中的每一个都检测一次,并记录检测结果。根据检测结果做如下判定如果在检测的全部重码汉字中,只有一个汉字可以与前一个汉字或后一个汉字组成词组,那么这个词组中的汉字就是所选的汉字,程序用这个选定的汉字自动替换代表重码汉字;如果在检测的全部重码汉字中,没有一个汉字可以与前一个汉字或后一个汉字组成词组,那么不做选择;如果在检测的全部重码汉字中,有一个以上的汉字可以与前一个汉字或后一个汉字组成词组,那么也不做选择。
为了提高智能处理重码汉字的能力,要建立一个个人词库,个人词库中的词组是操作者所使用的特殊词组,例如人名、地名和专业术语。智能处理重码汉字时,也要检测重码汉字与前后汉字是否可以组成个人词库中的词组,按照上面的判定方法确定是否进行自动选择。
智能重码汉字处理方法还要根据语言环境自动选择重码汉字。虽然汉字词组很多,但在一定的使用环境中这些词组出现有一定的规律,例如,在公文中有公文所经常使用的词组,在法律中有法律文件经常使用的词语,在电子学中有电子学经常使用的词汇。这些词组在各自的领域中构成了相对稳定的语言环境。确定了语言环境之后,可以根据所在的语言环境确定重码汉字。例如,在电子学语言环境中尽量选择能够构成相关词组的汉字,在法律文书中尽量利用与法律有关的词组选择重码汉字,在公文中尽量利用公文中经常使用的词组选择重码汉字。
智能重码汉字处理方法根据词组和语言环境自动选择重码汉字,但对于一些不能组词的重码汉字无法进行自动选择,为了弥补这个缺陷,可以增加自动学习的功能。当操作者按键选择一个重码字时,由重码汉字处理程序自动记录这个字前面的汉字和后面的汉字,当下一次出现这个字并且不能根据词组和语言环境选择时,在记录中查找这个重码汉字,判断这个重码汉字前后的汉字与记录中的是否一样,如果前一个字或后一个字相同,就根据上次的记录选择重码汉字。这样智能处理重码汉字的方法就有了“学习”的能力,记录一次之后就能根据记录进行自动选择了。
在进行智能处理重码汉字时,为了更准确地选择重码汉字,可以在输入汉字时进行切分词组。操作也很简单,输入完一个词之后或输入一个词之前按一下键盘的左[SHIFT]键,按下之后放开,继续输入下一个汉字的代码。按左[SHIFT]键时,输入一个切分词标识,切分词标识可以根据情况选择ASCII码大于07FH小于0A1H的字符,例如选择ASCII码为80H的字符为切分词标识。智能处理重码汉字时,当遇到切分词标识时,对切分词标识前后的汉字作为两个词看待,这样可以提高自动选择的准确性,可以提高智能处理的能力。切分词组不是必需的,可以在输入时灵活地使用。
由于智能方法能够根据词组和语言环境自动选定重码汉字,所以大大地提高了重码汉字的处理速度,不需要操作者按键选择,所以使用起来非常方便。但是智能处理方法不可能确定全部的重码汉字,对于一些不能智能确定的重码汉字可以用下面的4种方法进行处理。
(2)顺序处理重码汉字重码汉字处理程序根据重码标识或重码索引表自动判别哪些汉字是重码汉字,哪些重码汉字还需要进一步处理。对于需要处理的重码汉字,通过重码索引表找到全部的对应重码汉字,在代表重码字附近开一个小窗口,把重码汉字和序号显示在窗口中,用键盘、鼠标或光笔选择重码汉字。处理完一个重码汉字之后,继续寻找下一个重码汉字进行处理,直到处理完全部重码汉字。
(3)连续处理同一个重码汉字汉字数量很大,但是在实际使用中有许多汉字的使用频率很低,有一些汉字的使用频率却很高,例如“的”字的使用频度大约为4%,“是”的使用频度大约为1.2%,就是说每100个汉字中有4个“的”字,有1.2个“是”字。一个一个地确定这些重码汉字非常麻烦,许多都是不必要的重复劳动。本发明提供的连续处理同一个重码汉字的方法可以方便、快速地确定重复出现的重码汉字。
重码汉字处理程序根据重码标识(或重码索引表)查找代表重码字,找到代表重码字之后,根据代表重码字和重码索引表查到其余对应重码字,用简单的人机对话方法选择确定这个重码汉字。连续处理同一个重码汉字的方法就是根据这个基本方法连续处理完一个汉字文件中多次出现的同一个重码汉字。在处理重码汉字的过程中,查找并处理完一个重码汉字之后,在文件中继续查找这个重码汉字进行处理,对其他重码汉字暂时不做处理,直到把文件中出现的这个重码汉字全部处理完之后,再去处理其他重码汉字。例如在一段文字中重复出现50个代表重码字“阿”,在处理重码汉字时,当第一次查到“阿”字时,根据重码标识或重码索引表判别“阿”字是否为重码汉字,如果不是重码汉字,那么继续处理下一个重码汉字;如果是重码汉字,那么根据重码索引表找到其他对应重码字,选择所要输入的汉字,接下来在文件中继续寻找“阿”字并处理,处理完全部“阿”字之后再去处理其他重码汉字。
连续处理同一个重码时,在提示行中出现的重码字及其序号位置保持不变,选择一次或几次之后,可以短时记忆某个汉字的序号。由于连续选择同一组重码汉字,中间不处理其他重码,而且往往选定的是同一个汉字,所以不必看提示行,根据短期记忆可以正确地选择所要输入的汉字。不必反复地看提示行,这就减少了找字的负担,加快了处理重码汉字的速度。
在具体的操作中,也可以一次选定多次重复出现的重码汉字,例如在一段文字中有许多“阿”字,当第一次选定“阿”字之后,以下就自动选择“阿”字,不需要操作者的干预。也可以只选定同一词组中出现的重码汉字,例如在“阿姨”这个词中选定“阿”字之后, 以下查找“阿”字时,检测后一个汉字是否为“姨”字,如果是“姨”字便自动选定前一个汉字为“阿”字。这样处理更方便,也更快。处理重码时可以把提示信息移到正在处理的汉字附近,这样选择重码汉字就更方便。
(4)利用鼠标器、光笔等设备处理重码汉字输入重码汉字时暂时输入一个代表重码字,要输入的可能是这个代表汉字,也可能是其他汉字,如果所要输入的就是这个代表重码字,那么就不必替换这个汉字。上述方法(2)和(3)对全部重码汉字都要选择一次,即使代表重码字就是所要输入的汉字也得选择一下,这也是不必要的重复劳动。因为代表重码汉字是一组重码汉字中使用频度最高的汉字,所以很多时侯暂时输入的代表重码字就是所要输入的汉字,只需处理其他需要替换的代表重码汉字。利用鼠标器、光笔等设备可以做到这一点。
具体方法是把鼠标器或光笔指向要替换的汉字,并且选取这个汉字,程序根据重码标识或重码索引表判别这个汉字是否为重码汉字,如果是重码汉字,那么根据重码索引表查找其余对应重码汉字,在这个代表字下面开一个小窗口,把重码汉字和序号显示在内,利用鼠标器、光笔或键盘选择处理。因为减少了选择次数,也提高了处理重码汉字的速度。这种方法可以借助于任何能够移动光标的设备实现。
(5)修改选择错误的方法如果在使用上面4种方法处理重码时错误地选择了重码汉字,可以用下面的方法进行修改。进行修改时也要用到重码索引表,具体方法是这样用鼠标器、光笔或键盘把光标移到所要修改的汉字上,重码汉字处理程序获取这个汉字的内部码,根据重码索引表判断这个汉字是否为代表重码字,如果是代表重码字,再找到全部对应重码字,显示在需要修改的汉字的旁边,以供选择正确的重码汉字;如果不是代表重码字,就要根据这个汉字在重码索引表中的位置确定代表重码字和其余的对应重码字,显示在需要修改的汉字的旁边,以供选择正确的重码汉字。这样修改错误就不用重新输入汉字代码,把光标移动到需要修改的汉字上就可以重新选择。
结合使用这5种方法可以方便、快速地处理重码汉字。由于不同汉字编码中的重码不同,相应地重码索引表也不一样,只有根据输入汉字时使用的重码索引表才能正确处理重码汉字。
本发明提供的重码汉字输入方法和5种重码汉字处理方法独立于任何汉字编码方案,只要汉字编码有重码都可以利用它方便、快速地输入重码汉字。可以在汉字操作系统中使用,也可以在汉字编辑软件中使用,甚至所有涉及汉字输入的汉字信息处理软件都能使用。
这种方法分两步输入一个重码汉字,能够实现重码汉字的盲打输入,即使有较多重码也不影响输入速度。可以使简单的汉字编码获得较快的输入速度,解决了汉字输入中简单与快速的矛盾。
权利要求
1.一种重码汉字输入方法以及与此相关的重码汉字处理方法,其特征是在汉字内部码中设置重码标识,根据重码标识区别重码汉字和非重码汉字;分两步输入一个重码汉字,第一步输入代表重码字,第二步把重码汉字集中到一起统一处理。
2.根据权利要求1,在汉字内部码中设置重码标识位或重码标识字节,给重码汉字加上重码标识,用来区别重码汉字和非重码汉字。
3.根据权利要求1,分两步输入一个重码汉字,第一步输入一组重码汉字中的代表重码字,并且给这个代表重码字加上重码标识;第二步把重码汉字集中到一起统一处理,处理重码汉字时首先根据重码标识或重码索引表判别重码汉字,再从重码索引表中查到其他对应重码字,利用智能处理方法、顺序处理方法、连续处理方法、鼠标处理方法或修改选择错误的方法选择重码汉字。
4.根据权利要求3,重码索引表由相互关联的三个数据表组成,分别提供代码、代表重码字、对应重码字的信息,其中代码与代表重码字一一对应,从代码或代表重码字可以查到对应重码字,从对应重码字也可以查到代表重码字。
5.根据权利要求3,智能处理重码汉字的方法根据重码汉字与前后字的组词情况,参照一定的语言环境自动选择重码汉字。
6.根据权利要求5,检测一组重码汉字与前后字的组词情况之后,做这样的判断如果在检测的全部重码汉字中,只有一个汉字可以与前一个汉字或后一个汉字组成词组,那么这个词组中的汉字就是所选的汉字;如果在检测的全部重码汉字中,没有一个汉字可以与前一个汉字或后一个汉字组成词组,那么不做选择;如果在检测的全部重码汉字中,有一个以上汉字可以与前一个汉字或后一个汉字组成词组,那么也不做选择。
7.根据权利要求5,在输入完一个词之后或输入一个词之前,按一下键盘的左[SHIFT]键,作为切分词组标识。
8.根据权利要求5,当操作者按键选择一个重码汉字时,自动记录这个字前面的汉字和后面的汉字,当下一次出现这个重码汉字并且不能根据词组和语言环境自动选择时,在记录中查找这个重码汉字,判别这个重码汉字前后的汉字与记录中是否一样,如果前一个字或后一个字相同,就根据上次记录自动选择重码汉字。
9.根据权利要求3,对于不能智能处理的重码汉字利用顺序处理方法、连续处理方法或鼠标处理方法进行人机对话选择。
10.根据权利要求3,对于选择错误的重码汉字,根据重码索引表查到代表重码汉字和其它对应重码字,重新选择正确的重码汉字。
全文摘要
本发明提供了一种通用的集中处理重码汉字的方法,适用于通过汉字编码进行汉字输入的计算机程序设计中。集中处理重码汉字的方法,根据重码标识和重码索引表区别重码汉字和非重码汉字。分两步输入一个重码汉字,第一步输入代表重码字,此时不必看屏选字,汉字全部盲打输入;第二步把重码汉字集中到一起统一处理,提供了智能处理、顺序处理等5种方法。使用集中处理重码汉字的方法可以方便、快速地输入重码汉字。
文档编号G06F3/023GK1149149SQ9510676
公开日1997年5月7日 申请日期1995年6月26日 优先权日1995年6月26日
发明者兰久富 申请人:兰久富
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1