基于纵横码的检字法
常州技术师范学院计算机系
尹长青 陈亚铭 葛轶![]()
一、前言
中文检字法,是指能在众多的字、词中把我们需要的字、同都能快速地检索出来的一种方法。
西文是拼音文字,它有一个字母的固定排序,且单词、不论长短,按字母的排列组合,就能简便地检出来。而中文检字法实现起来相对较为困难。中文检字法应当做到老少皆宜,既能适宜于启蒙教育,又能适宜于大众普及使用。现有的中文检字法,在字词典上有传统的部首检字法、汉语拼音检字法、笔画检字法等等。而电脑的汉字编码有音码、形码、音形码、流水码等四大类,方案数不胜数。面对众多的中文检字法,人们共同的感觉就是,各有长处,但都美中不足,不尽如人意,都希望有更好的检字法能供大家使用。
二、中文检字法的现状和不足
现有的电脑汉字编码的检字法,不外是采用以下几种方法。
1.部首检字法
部首检字法虽实用,但满足不了现代快速检索的要求。因为部首检字法对取部首的方法只定了形,没定好位,要判定一个字属何部,还要花一番功夫推敲。我国汉字信息处理的现状是:文字有规范,书写有规则,而取部首无规定。其缺点是部首太多、太散、无规律,取部首无定位,无规定。所以部首排序检字法一直被电脑拒之门外。为满足汉字快速检索,还需进一步探索。
2.汉语拼音排序检字法
虽说是汉语拼音排序,实际上此方法并不是按汉语拼音字母的声音、韵母的排列规律来排序的。而是套用26个英文字母的排序来对中文排序它是采用每个字的汉语拼音字母按英文字母A到Z来组合排序,西文是拼音文字,用字母排序是很成功的。而中文就不同,因它的特点是一音四调,一音多字,一字多音,一次排序不行还要按声调阳平、阴平、上声、去声来进行第二级排序(电脑汉字编码连这级都没有)。这样排序后,同序的同音字仍有很多。后面就没有序了。
汉语拼音排序法的优点是简单、易学,电脑和字母排序通用,现有的多数字典、词典。电脑的音码,都是采用这个方法排序的。但不足之处就是有相当多的同音字没有序(即重码),如果说无序的同音字只有三五个,问题不大:但实际上是十几个,有的还有上百个。如读音是yi的字就有110个,不但在字词典上不能在当页查到,在电脑上也要不断翻页才能查到。由此看来,汉字不是拼音文字,用音来排序检索有其不足之处。更重要的是我们日常使用的不是拼音而是汉字,如果碰上下知道读音的汉字,此法就无法应用了。
3.笔画数排序检字法
这个方法很简单,就是按汉字的笔画数从一画到三十多画依次排序。同笔画的则按横竖撇点捺的先后两两组合排序,无须记忆。缺点是每个字都要慢慢地数笔画,效率很慢。现有的编码,不论其如何变化,他们共同的特点就是指组成汉字的各种构件(各编码称为字元、字根或其它),按笔划的规律或者是自定的某些规律把汉字的构件排好序,然后把它们对应地安排在26个英文字母上,每个字母代表几个构件。借用英文的排序来实现汉字的排序。此法规则多、记忆量大,不适宜大众普及使用。
三、基于纵横码的检字法
纵横汉字编码法是一种将汉字输入电脑和简易方法。这种方法将构成汉字的笔划分10种笔形进行编码。它类似汉字的四角号码字典的笔划分类法。同时,为了减少重码,纵横汉字编码中还对汉字的字形作进一步划分。它将汉字分为两类,一类为有部首汉字;另一类为无部首汉字。其中,对汉字的部首作了归类,提取了55个主部首。因此,纵横码是一种简单易学、规则易记、重码率低的汉字输入方法,它对中文根基不深及汉语拼音不熟的广大用户无疑是一种方便、快捷的汉字输入方法。它具有记忆量少——只需记55个部首;操作简单——用“0”-“9”这10个数字键;使用方便——不需使用英文大键盘等特点。
我们根据汉字的纵横编码来进行排序,若出现重码,则进行分离,规则如下:按笔画数的多少来进行排序。由此,我们得到了纵横码的排序法,本排序主要是根据汉字的纵横码来进行。而纵横汉字编码重码率极低,故利用纵横码快速准确地检索汉字。随着现在汉字GBK内码的使用,系统提供了多达20902个符号,而其检索法则急待完善。因此,我们提出采用纵横码汉字检索法来进行GBK中符号的排序,将有利于汉字检索的规范化。纵横码易学,不易忘,如中小学生都学会了纵横码检索汉字,必将大大方便他们用计算机检字和检词。