简繁体转换工具
目录
常用简繁转换工具
测试结果
转换方式 | open-cc准确率 | zhconv准确率 |
---|---|---|
繁体→简体 | 0.8883 | 0.8849 |
简体→繁体 | 0.9695 | 0.9814 |
测试字符:王力《古代汉语》附录简繁体对照字表
繁体字以台湾繁体为准。
测试代码示例:
from zhconv import convert id_c_s2t = 0 id_c_t2s = 0 id = 0 with open("characters.txt", "r",encoding='utf-8') as file: lines = file.readlines() for line in lines: id = id + 1 char_s2t = convert(line.strip()[0],'zh-tw') if char_s2t == line.strip()[-1] or char_s2t == line.strip()[-2]: id_c_s2t = id_c_s2t + 1 line2 = line[0:3] char_t2s = convert(line2.strip()[-1],'zh-cn') if char_t2s == line2.strip()[0]: id_c_t2s = id_c_t2s + 1 # print(line.strip()[-2]) pre_s2t = id_c_s2t / id print(f'pre_s2t={pre_s2t}\n') pre_t2s = id_c_t2s / id print(f'pre_t2s={pre_t2s}\n')
以下Alan调研结果
1.经测试,gb2312中的6762个简体字使用zhconv可以转换为繁体字的个数为2318个(zh-tw)和2301个(zh-hk)。 2.通用字表中简繁体对应表中的数据的抽检测试数据
print(zhconv.convert("临", 'zh-tw')) # 正常繁体字 print(zhconv.convert("鸦", 'zh-tw')) # 正常繁体字 print(zhconv.convert("冒", 'zh-tw')) # nothing,有异体字表,但未转换 print(zhconv.convert("修", 'zh-tw')) # nothing,有异体字表,但未转换 print(zhconv.convert("迹", 'zh-tw')) # 异体字 print(zhconv.convert("洁", 'zh-tw')) # 正常繁体字 print(zhconv.convert("耻", 'zh-tw')) # 异体字
3.对网上开源数据找到的简繁体对应字表进行测试,有真正简繁体对应关系的个数为1733(https://raw.githubusercontent.com/lqfeng/ChineseCharacters/refs/heads/master/%E4%B8%AD%E6%96%87%E7%B9%81%E7%AE%80%E4%BD%93%E5%AD%97%E7%AC%A6%E5%AF%B9%E7%85%A7%E8%A1%A8.txt) 该数据误差较大,需要想办法修正此字表数据
总结
根据《通用规范汉字表》2013版中的资料得出: 当前标准汉字:8105个 具有 简、繁、异体三种对应关系的汉字:3120个 规范字对应的繁体字比例为: 2546:2574 根据开源数据得到的简繁体对应关系文本个数为:1733
目前的问题是至少有几百个规范字的繁体字无法正确对应:
- 一个规范字有多个繁体字对应的情况,例如 对照表1827中的“须”字所对应两个不同的繁体字。
- 一个规范字没有繁体字对应,但有多个异体字对应的情况,这些异体字在不同的语料资料中都有可能作为该规范字的繁体字表达。例如1578 “俊” 字所对应的两个不同的异体字
- 一个规范字既有繁体字也有异体字对应的情况。对照表 1770的“艳”字,包含一个繁体字和两个异体字
简繁体转换工具.txt · 最后更改: 2025/02/21 17:45 由 MNBVC项目组