汉字简繁转换方法新探

作者 沈克成 来源 《汉字书同文研究》第6辑(2005年) 发布时间 2014-12-14

五年前,拙著《汉字简化说略》刚一杀青,我即着手搜集资料,准备撰写姊妹篇《电脑汉字刍议》。到底是什么动力支撑着我去孜孜不倦地执着钻研这一枯燥乏味的课题?我想就因为我一直抱着这样一个信念:21世纪将是华人叱咤风云的时代,将是汉字大显身手的时代;但是,由于历史的原因,世界各地的华人并没有实现“书同文,语同音,词同字”。这无疑是我们中国人在做无谓的内耗,自己给自己构筑了无形的篱笆。于是我加入了为“书同文”呐喊的行列,于四年前主编出版了《汉字书同文研究》论文集第一辑,希望用我微薄的力量,唤起国人对“书同文”的重视。遗憾的是,由于种种原因,致使台海两岸的关系并不令人乐观。在这样的情势下,两岸的学者是不可能有机会坐下来,共同为“书同文”出谋划策的,更不要说在政府层面上将此课题提到议事日程上来。

但是,时代的发展急切需要世界上所有的中国人联合起来,携手在地球村的各个角落共同书写华夏民族的辉煌篇章。时间不允许我们再等待和观望了,于是,我想到了是否可以从另一个角度,用另一种办法,来促进两岸汉字的交流和统一。

在《汉字简化说略》的《后记》中,我曾经写过这么一段话:“这几年来有机会涉足中文信息处理领域,每每遇到一些繁简错位现象,甚感迷惑。我原以为这是计算机繁简转换软件出了问题,但仔细一琢磨,原来是两岸的文字现状铸就了信息交换的不便。于是我萌发了一个念头,希望能通过努力将这种信息交换的准确率提高到99%以上……。”

从理智上来讲,目前的确还不是讨论“书同文”的时候,但我从直觉上认为,现在却已是时候,并且具备了足够的条件,这就是可以设法研制出一个准确率达到99%的计算机中文汉字简繁转换软件。因为其一,两岸大众已充分认识到“文字统一”的重要意义;其二,当前计算机的智能化水平已经很高,足以取代任何领域的人工操作;其三,我们总算已经有了一个《CJK(中日韩)国际标准(ISO10646)》统一汉字大字库。

五十年来,大陆的人们早已习惯了简化字的使用,而且从一般用户层面来看,并没有因为使用了简化字而带来什么不便;同样,港、澳、台等地区的人们一直在使用繁体字,他们也不希望在文字上有太大的变动。既然如此,我们为何不任其自然,让大家各走各的路,各唱各的调。只是在需要交流的时候,就交由计算机来完成“简繁”或“繁简”转换的工作?就像在联合国大会上一样,只要戴上同声翻译耳机,不是什么语言障碍都可以跨越了吗?

当然,这仅仅是一种权宜之计,但是,与其停滞不前空呐喊,还不如先迈出一小步探探路,也许前面不远处就会是“柳暗花明又一村”。

一、简繁转换的可能和困难

《简化字总表》分成三个表。第一表列出350个不作偏旁用的简化字。第二表列出132个可作偏旁用的简化字和14个简化偏旁,这些简化字和简化偏旁构成了汉字简化的类推规则。第三表收入类推出来的简化字1753个。

繁体字的简化从字义上来说,有下面三种情况:

1.一简一繁相对应。

一个繁体字简化后得到一个简化字,这个简化字的释义和原来的繁体字一样,没有增加。如:邓(鄧),灯(燈),穷(窮)。

2.一简对多繁。

几个释义不同的繁体字简化成了同一个简体字,造成了这个简化字具有多个释义。如:纤(纖縴)、系(係繫)、干(幹乾)。

3.简繁共存。

一个或几个繁体字简化后与另一个原有不同释义的字合并起来,从而造成了这个简体字的释义扩大。如:表(錶)、制(製)、后(後)。

从《简化字总表》中可以看出,大部分简体字从字义上来看符合上面第一种情况,在释义上一一对应完全相同。但是,在第二、第三种情况中,由于繁体字的简化而造成了“一简多繁”或“简繁共存”,从而使相应的简体字释义扩大。当我们需要将其还原成繁体字时,就无法从单独一个简体字上来确定正确的繁体字,而必须从整个句子或词组上进行上下文分析判断,才能确定正确的繁体字形。这一类“一简多繁”或“简繁共存”字虽然为数不多,但却散布在用简体字写作的文章句子中,形成了许许多多的词组。因此在简繁处理时,我们必须建立一个“简繁转换词库”,逢到“一简多繁”和“简繁共存”的情况时,依照词组的不同意义,辨别出到底该用哪一个繁体字来替换之。

二、简繁字库的构造和分类

目前,大陆计算机使用的汉字库是根据基本字符集国标GB2312-80而建立的,但本文所述及的“简繁转换词库”应该按照GBK-1字符集中的汉字来处理。

首先,我们可设立三个字库:简体字库,繁体字库和备用字库。并对照《简化字总表》和《异体字整理表》,依次对所有三个字库中的汉字字形进行比较检查,并作出如下处理:

1.如果简体字库中的汉字无对应的繁体字形,即视其为传承字,把它复制到繁体字库中去。如“去”的内码为C8A5。

2.如果简体字库中的汉字具有一个唯一对应的繁体字,则把对应的繁体字形放到繁体字库中去。如爱(B0AE)——愛(90DB)。

3.如果简体字库中的汉字是一个“一简对多繁”的字,则把与其对应的多个繁体字中使用较频繁的一个繁体字放到繁体字库中,把其余一个或几个繁体字形放到备用字库中去。例如简化字“历”的内码为C0FA,放在简体字库;与其对应的繁体字有“歷”和“曆”,其中使用较频繁的“歷”的内码为9A76,放在繁体字库;另一繁体字“曆”的内码为9AD1,放在备用字库。

三、转换处理的步骤和要点

第一步,简繁转换。

在1700多个简化字的简繁转换过程中,可能产生歧义的只有167个,其余的都是一一对应的。

在这167组中,一个简化字可能转换成甲繁体字,也可能转换成乙繁体字。我们暂以最难区分或最常用的字作为默认字。例如“范”字转换时,可能转换成“範”,也可能仍用“范”。相比较而言,范的义项较窄,只表示一种草,或一种虫,但是“范”作为姓氏,古今使用的人不计其数。如果我们按常用原则,将“范”转换成“範”,则在文本中凡是出现姓氏“范”,就都会出现不可容忍的差错。正如我们经常看到“範成大”、“範仲淹”等笑话。为此,我们就以“最难区分”作为设定默认字的原则,先将“范”一律转换成“范”;然后根据由“範”字组成的词汇,进行辨别筛选,再对应该转换成“範”的“范”进行第二次转换。

在这167组简繁字中,以其原形为默认字的有90个,它们分别是“暗、板、背、辟、表、别、卜、布、才、出、吊、冬、豆、范、干、谷、刮、果、合、哄、胡、回、毁、家、奸、姜、僵、借、局、巨、克、扣、昆、困、累、厘、栗、梁、了、麻、霉、蒙、面、渺、蔑、念、匹、苹、凄、千、秋、曲、沈、升、尸、松、搜、托、挽、溪、席、系、咸、衔、向、幸、修、须、旋、夭、逾、吁、郁、欲、御、愈、岳、云、扎、折、征、症、只、志、制、致、周、朱、注、雕”。

以原形的繁体字或异体字为默认字的有77个,它们分别是“摆(擺)、并(併)、采(採)、厂(廠)、冲(衝)、丑(醜)、当(當)、党(黨)、淀(澱)、斗(鬥)、恶(惡)、发(發)、丰(豐)、复(復)、个(個)、构(構)、挂(掛)、广(廣)、柜(櫃)、后(後)、划(劃)、欢(歡)、汇(匯)、伙(夥)、获(獲)、饥(飢)、几(幾)、价(價)、荐(薦)、尽(盡)、据(據)、卷(捲)、夸(誇)、腊(臘)、蜡(蠟)、里(裡)、历(歷)、帘(簾)、炼(煉)、卤(鹵)、么(麽)、弥(彌)、凭(憑)、仆(僕)、扑(撲)、朴(樸)、签(簽)、确(確)、熔(鎔)、舍(捨)、术(術)、苏(蘇)、台(臺)、坛(壇)、涂(塗)、团(團)、洼(窪)、万(萬)、无(無)、纤(纖)、闲(閑)、凶(兇)、熏(燻)、扬(揚)、药(藥)、叶(葉)、荫(蔭)、游(遊)、余(餘)、愿(願)、赞(贊)、脏(臟)、占(佔)、钟(鐘)、种(種)、筑(築)、准(凖)”。

第二步,繁体识别。

我们再对照这167组简繁字,以排斥法为原则在“简繁转换词库”中进行查找。凡是同属一个简体字的几个繁体字,如果在“简繁转换词库”中无法找到与待处理文字相对应的词组时,就把默认字作为处理结果。

例如“後”是“后”的繁体字。“后”在古汉语中是君主的意思。“後”的本义为受牵制而落在人后,引申为时间、位置在后。《简化字总表》采用同音代替,将“后”与“後”合而为一。但“后、後”两字不是对等字。

当我们需要进行“简繁转换”时,到底应该将“后”转换成“後”呢?还是转换成“后”?由于“後”表示时间或在空间中的位置,是个常用字,所以我建议将“后”默认转换成“後”。但是,“后”在被规定为“後”的简化字之前,本身就代表“古代君主、君主的妻子或皇帝的母亲”等义,所以,在类似“后辟,后处,后帝,后妃,后皇,后稷,后缗,后土,后王,后辛,后夷,后羿,皇后,棋后,太后,王后,夏后,弈后,影后,后发座,皇太后,慈禧太后”等词汇中,我们就不能让“后”都转换成“後”。

下面再举两例,以此来说明查找方法。

“谷”是“榖”的简化字,“榖”是“谷”的繁体字。“穀”的本义是粮食和庄稼的总称;“谷”的本义为两山之间的流水所经低洼之处。两者在某些义项上是古通用字,在宋、元、明、清的多种通俗文学读本中,大都以“谷”代“穀”。《简化字总表》采用同音代替法,以“谷”作为“穀”的简化字,将两者合而为一。

那么,当我们将简化字文本转换为繁体字文本时,是不是可以将“谷”一律转换为“穀”呢?答案显然是否定的。譬如“稻谷”我们应该转换成“稻榖”,而“山谷”我们则应该保留其原形不变。可以采用以下的方法,让计算机来进行智能识别和处理。

首先,让我们定义“谷”字为默认字,那么在“简繁转换词库”中只需建立与“榖”字所组成的词组。与“榖”字所组成的词组有:百榖、布榖、稻榖、毒榖、榖板、榖璧、榖伯、榖仓、榖草、榖昌、榖城、榖旦、榖盗、榖道、榖地、榖蠹、榖蛾、榖坊、榖风(东风)、榖榖(鸟名)、榖圭、榖芨、榖类、榖梁(姓名)、榖林、榖米、榖气、榖丘、榖犬、榖人、榖日、榖神、榖熟、榖水(地名)、榖思、榖穗、榖物、榖仙、榖象、榖芽、榖言、榖雨、榖贼、榖子、榖租、馆榖、钱榖、五榖、小榖、榖氨酸、榖精草、榖女星、榖维素、榖痒症。

当在句子中出现“谷”字时,立即把“简繁转换词库”中与“榖”字相关的词组取出来,与此句子进行比对。如果发现句子中的“谷”与以上词组中的某个词组相符,则把“谷”字换成“榖”字;如果没有找到相符的词组,则取其默认字“谷”。

  再譬如“發”和“髮”都是“发”的繁体字。“髮”是形声字,从髟犮声,人们常将“发”作为“髮”的简体使用;“發”是形声字,本义为拉弓射箭,另外还有“生长、显现、揭露、发挥、启发、分发、出发”等义,都由本义引申而来。

  当我们进行简繁转换时,自然应该将“发”转换成“發”;但是,在表示“头发、毛发”义时,“发”应转换成“髮”。有关“髮”的词组例举如下:

  白髮、亳髮、髮辫、髮菜、髮齿、髮带、髮鼓、髮鸡、髮笄、髮际、髮髻、髮夹、髮间、髮胶、髮卡、髮蜡、髮廊、髮露、髮毛、髮妻、髮乳、髮式、髮塔、髮套、髮网、髮屋、髮型、髮旋、髮指、毫髮、黑髮、华髮、假髮、剪髮、结髮、理髮、毛髮、胎髮、头髮、脱髮、削髮、须髮、生髮油、润髮剂、披肩髮、钢丝髮、断髮文身、髮短心长、毫髮不爽、鹤髮童颜、鸡皮鹤髮、间不容髮、结髮夫妻、令人髮指、怒髮冲冠、披头散髮、千钧一髮、童颜鹤髮、削髮为尼、削髮为僧、一髮千钧、擢髮难数。

虽然平时在说话时,我们可以通过声调来辨别到底是“發”或是“髮”,但是在文本文件中,我们无法从字音来判别,只能借助词义来分解,来归类,来区别了。总之,我们可以运用查找匹配法对整篇文章进行扫描,从而达到简体字到繁体字的自动转换。

第三步,人工干预。

在简化字中,我们常采用同音代替,借用一个与繁体字的形、义全不相同的简笔俗字做它的简化字。尽管这些约定俗成的简化字有一定的群众基础,已在民间长期流行,但因为这些简化字同时还是个罕用字,这样一来,这些简化字除了原有的字义之外又兼有了所取代的繁体字的字义,于是成了多义字。这些简化字在使用新增义项时,有一个相对应的繁体字,而使用原有义项时,就没有相对应的繁体字。所以在某些场合需要作出特别处理,否则就会引起意义混淆。例如:

《简化字总表》规定以“里”代“裏”,那么“海里”到底是指在海洋里呢,还是指度量单位“浬”?在这种情况下,建议将“海里”转换成“海里(?)”。也就是增加符号“(?)”,以便提醒人们在转换之后再通过人工干预的方法,根据上下文选取一个合适的繁体字。例如它如果含着在海洋里的意思,那就转换成“海裏”;否则就仍用“海里”或代之以“浬”。

类似的词例还有不少:

△象(像):以“象”代“像”,“铜象”是指以铜做的人像呢,还是指用铜做的大象?

△复(覆):以“复”代“覆”,“复国”是指复兴国家呢,还是指国家覆亡?

△曲(麯):以“曲”代“麯”,“小曲”是指歌曲呢,还是指酒类?

△制(製):以“制”代“製”,“英制”是指英国的度量制呢,还是指英国制造?

△后(後):以“后”代“後”,“先后”是指时间或空间的次序呢,还是指已故世的皇后?“皇后”是指皇帝的妻室呢,还是指在皇帝的身后?

△余(餘):以“余”代“馀”,“余钱”是指剩馀的钱呢,还是指我的钱? “余不尽意”是指余下的意思未完呢,还是指我不能把意思说完? “余年无多”是指人到晚年,活不多久了呢,还是指我的年龄不大?

△借(藉):以“借”代“藉”,《礼记》中的“天子藉田千亩”是指天子耕种之田呢,还是指天子要向人借田?

诸如此类,都拟采用本节所叙“人工干预”加符号“(?)”的方法来解决。

从繁体到简体的转换,相对来说要容易得多,只要用一繁、一简两张代码表,即可建立一份“一对一”或“多对一”的汉字“繁简转换词库”。

依照上面介绍的思路,我们正在编制简体转换繁体的处理软件,它应该具备这样的功能:即在词汇识别的前提下,采用内码转换的方法,在WINDOWS平台上对任何汉字文本文件进行简繁转换,从而打印出繁体形式的样张来。
 

沈克成 温州里仁电脑公司董事长,中文信息学会汉字编码专业委员会委员,浙江大学兼职教授,《汉字书同文研究》丛书编审委员会副主委。

QQXIUZI.CN 千千秀字