下载 >  开发技术 >  Delphi > 最完整的“汉字-->拼音声母”处理pas单元(Delphi) 2010年12月最新修正版

最完整的“汉字-->拼音声母”处理pas单元(Delphi) 2010年12月最新修正版

2010-12-27 上传大小:19KB
分享
{*******************************************************}
{                汉字-->拼音声母处理                    }
{           Developed by cyw(QQ: 26890954)              }
{           2010.1.16 All Right Reserved.               }
{*******************************************************}

本人免费维护本单元,若使用过程中发现问题,请QQ联系,谢谢!

注意:本单元基于Delphi7开发,支持Delphi7-2007,暂不支持Delphi2009-XE!等我以后有空处理Unicode字符串后,才能支持。

{
一、特点:
1、支持多音字,支持所有中国汉字(共20336个),包括难字、僻字、广东白话字、繁体字等所有计算机能显示的全部汉字。
   例如:镕、啱、揾、叻、嘅、咁、門、長、發財、車、冇乜嘢。

二、实现原理:
1、根据汉字的常用程度不同,划分了五个等级。一个汉字两个字节
                            ,按照汉字编码规则,第一字节为区码(纵向),第二字节为位码(横向),
   第一字节的范围是129-254,共126种,其中161-175段存放各种标点符号,254段为无效汉字,真正有效段为129-160,176-253,共110种。
   第二字节的范围是64-254,其中127段为分隔符,不存在任何内容,真正有效段为64-126,128-254,共190种。
   从常用程度来分级,一级汉字(区176-215,位161-254),二级汉字(区216-247,位161-254),三级汉字(区129-160,位161-254),
   四级汉字(区129-160,位64-160[127除外]),五级汉字(区176-253,位64-160[127除外])。
2、按以上规则可生成五级的中国汉字字库,每个区码一行,每个位码一列。
3、对中国汉字字库中的每个汉字,扫描从互联网下载的较完整的<GBK汉字各种编码汇总.xls>拼音字库,找到每个汉字的全拼拼音(包括多音,一个汉字最多3种读音),并获取每个读音的声母(首字母),
   生成汉字声母字典文件。
4、把声母字典文件中每个汉字的声母,按汉字字库的区位规则全部串在一起,由于一个汉字最多3种读音(有4种以上读音的仅有"竓qfzygs, 竕sfzyg, 竡ygsb"三个生僻字, 仅取前三个读音),
   为每个汉字预留3个字节空间,生成汉字声母表,如本单元所定义的LevelTable1..LevelTable5常量。
5、查找原理:要查找一个汉字在声母表中的对应位置,应使用以下公式计算得:
       汉字声母索引 = ((汉字区码 - 级别起始区码) * 位码长度 + 汉字位码 - 级别起始位码) * 3 + 1;  //其中3表示每个汉字预留的3个字节空间
   如汉字“啊”,其区位码分别是(176,161),根据上述第1点所定义,属于一级汉字,理应在常量LevelTable1中查找,
   由于一级汉字的位码范围是161-254,横向长度是94,即一行(一个区)有94个汉字,所以“啊”在LevelTable1中的位置应该是:
   ((176-176) * 94 + 161 - 161) * 3 + 1 = 1,即LevelTable1[1] = 'ae  ';

三、更新历史:
1、10.9.8 由于全拼输入法的拼音库太过全面,有部分多音字的第一个拼音却不是常用的拼音,导致汉字转声母有时不准确,
          决定抛弃全拼输入法的拼音库,改为采用从互联网下载的较完整的<GBK汉字各种编码汇总.xls>拼音字库,重新生成汉字声母表。
2、10.12.27 上一次更新时是在Excel中编辑<GBK汉字各种编码汇总.xls>文件的,在Excel内替换右括号")"为空时,"Jun1)"替换后会变成"1-Jun",
             Excel的奇怪现象,导致"军"字的声母变成数字"1",类似的情况还有很多。本次更新全面修正此类问题,并且经检测发现99.9%以上的
             多音字最多只有三个读音,仅"竓qfzygs, 竕sfzyg, 竡ygsb"三个生僻字有4种以上读音, 故声母表全部由4个字节改为预留3个字节,
             上述三个僻字仅截取前三个读音的声母。
}

======== 积分说明 =========
请下载后评论,在评论时点击四星或五星,积分会全额还给你,而且系统还会给你再加1分。
==========================                        
...展开收缩
综合评分:3
开通VIP 立即下载

评论共有5条

Revit来也 2016-05-17 17:23:26
为什么我编译的时候报错? 错误:Too many local constants, Use shorter procedures.
asdwu 2013-10-25 10:52:33
可惜,不能处理多音字
sui_yuan_zhe 2012-08-28 13:33:52
我编译的时候也报错了,不过里面的思想还是值得借鉴的
 
vb获取汉字全拼 立即下载
积分/C币:3
2013年最完整的“汉字→拼音声母”处理pas单元(支持Delphi6-XE5) 立即下载
积分/C币:3
最完整的“汉字-->拼音声母”处理pas单元(Delphi) 2010年12月最新修正版 立即下载
积分/C币:3
Unicode汉字拼音全拼、首字母Delphi查询函数(推荐使用) 立即下载
积分/C币:3
最完整的“汉字-->拼音声母”处理pas单元(Delphi) 修正版 立即下载
积分/C币:3
史上最完整的“汉字-->拼音声母”处理pas单元(Delphi) 立即下载
积分/C币:3
2012年最完整的“汉字--&gt;拼音声母”处理pas单元(Delphi) 立即下载
积分/C币:3
汉字转化成拼音首字母代码delphi xe 立即下载
积分/C币:3
汉字转拼音声母首字母 dll 立即下载
积分/C币:3
汉字转拼音(全拼)和首字拼音全支持delphi单元 立即下载
积分/C币:5

热点文章

VIP会员动态

推荐下载

delphi 声母
3C币 142下载
Delphi 汉字转拼音
3C币 28下载
delphi 汉字转拼音
5C币 49下载
TCS 2010(修正版)
3C币 62下载
c#获取给定汉字的拼音和声母
3C币 39下载
关闭
img

spring mvc+mybatis+mysql+maven+bootstrap 整合实现增删查改简单实例.zip

资源所需积分/C币 当前拥有积分 当前拥有C币
5 0 0
点击完成任务获取下载码
输入下载码
为了良好体验,不建议使用迅雷下载
img

最完整的“汉字-->拼音声母”处理pas单元(Delphi) 2010年12月最新修正版

会员到期时间: 剩余下载个数: 剩余C币: 剩余积分:0
为了良好体验,不建议使用迅雷下载
VIP下载
您今日下载次数已达上限(为了良好下载体验及使用,每位用户24小时之内最多可下载20个资源)

积分不足!

资源所需积分/C币 当前拥有积分
您可以选择
开通VIP
4000万
程序员的必选
600万
绿色安全资源
现在开通
立省522元
或者
购买C币兑换积分 C币抽奖
img

资源所需积分/C币 当前拥有积分 当前拥有C币
5 4 45
为了良好体验,不建议使用迅雷下载
确认下载
img

资源所需积分/C币 当前拥有积分 当前拥有C币
5 0 0
为了良好体验,不建议使用迅雷下载
开通VIP
img

资源所需积分/C币 当前拥有积分 当前拥有C币
5 4 45
您的积分不足,将扣除 10 C币
为了良好体验,不建议使用迅雷下载
确认下载
下载
无法举报自己的资源

兑换成功

你当前的下载分为234开始下载资源
你还不是VIP会员
开通VIP会员权限,免积分下载
立即开通

你下载资源过于频繁,请输入验证码

您因违反CSDN下载频道规则而被锁定帐户,如有疑问,请联络:webmaster@csdn.net!

举报

若举报审核通过,可返还被扣除的积分

  • 举报人:
  • 被举报人:
  • *类型:
    • *投诉人姓名:
    • *投诉人联系方式:
    • *版权证明:
  • *详细原因: