登录
/
注册
首页
论坛
其它
首页
科技
业界
安全
程序
广播
Follow
关于
导读
排行榜
资讯
发帖说明
登录
/
注册
账号
自动登录
找回密码
密码
登录
立即注册
搜索
搜索
关闭
CSDN热搜
程序园
精品问答
技术交流
资源下载
本版
帖子
用户
软件
问答
教程
代码
写记录
写博客
小组
VIP申请
VIP网盘
网盘
联系我们
发帖说明
道具
勋章
任务
淘帖
动态
分享
留言板
导读
设置
我的收藏
退出
腾讯QQ
微信登录
返回列表
首页
›
业界区
›
业界
›
Unicode中如何表示未收录的生僻字 --浅谈IDS ...
Unicode中如何表示未收录的生僻字 --浅谈IDS
[ 复制链接 ]
陆菊
1 小时前
程序园永久vip申请,500美金$,无限下载程序园所有程序/软件/数据/等
Unicode中的字符结构表示
Unicode标准是一个全球普遍接受的文字编码标准,它的理想是用一个巨大的字符集来表示世界上所有的字符,这样让全球的文字交流置于同一种体系之下,避免以前出现过的不同国家不同字符集互不统一造成的乱码,极大方便了全球的电子信息交流。
汉字是Unicode标准中内容最为庞大的子字符集,与英语等不同,汉字是每个字符有自己独立的意思,因此占用的字符数量巨大。目前Unicode 17标准中有15万个字符,中日韩统一汉字就占到了10万个以上。
但是即使是收字量如此之大,目前也无法涵盖汉字的所有字符,特别是手书时代有无数种不同的汉字变体或自造字,因此有大量字符是目前没有收录过的。另外还有一些新造的少量字符用于科技领域。这些未收入标准中的字符,就没有规定它们的字形。那这样的字符,应该怎么在电脑或手机等文本中表示它们呢?(文本方式之外,还是有很多办法的,图片,矢量图形,特殊的文件格式表示等等,但文本是最简洁最易交流的方式,使用频繁,甚至连化学结构的表达都有人发明SMILES文本来表达)。
为了在电脑时代表示这些字符,以前用过这样的用法,比如歘字在早期的字体中不存在,为了表示这个字,我们就用文字表示为“左焱右欠”,或者是“焱欠”,这是不得已的情况下变通表示,让读者能够理解的一种无奈的方法,它的缺点就是不太好表达更为复杂的结构。
因此,Unicode中提供了一种类似的方法,英文叫做Ideographic Description Characters, 中文翻译成 表意文字描述符,通过这些表示结构的字符与汉字部件结合来表示一个字的结构。因为定义了专门的表示结构的字符,其表达能力就大大增强了。
首先看标准中提供的表示结构的专用符号(来自wiki百科)
这种表示法的结构,是先放一个结构符号,后面提供表示结构的部件。
比如前面提到的歘字,用IDS来表示表示,就是 ⿰焱欠,第一个字符表示这个字是左右结构,相当于文本描述的 左X右Y;接着是从左到右(或从上到下)的部件,分别是焱、欠。这样读者就可以明白,这个表示一个组合字, 左右结构,从左到右分别是焱和欠。
当然,有些字形比较复杂,可能由多个部件构成,需要更进一步的拆分才能表达出来,因此用IDS的表示法可以进行嵌套表示。比如焱,如果没有这个字符,这种品字型的结构,可以把它拆分为上下结构,下部继续拆解为左右结构。因此 ⿰焱欠 可以继续写成
⿰⿱火⿰火火欠。
这种结构的解析顺序,从左到右,没有括号来表达优先级。上面这串字符,按从左到右解读,意思是说,整个字是左右结构(⿰);左边是上下结构(⿱),上面部件是火字,左边下面部件是左右组合的结构(⿰火火)。最后,右边是个欠字。
解读时要特别注意表示的结构中有几个部件,后面就要对应消耗几个部件。上例中,左边上部消耗一个火字,下面是左右结构,又消耗两个火字。最后剩下的欠字,对应着左右结构中的右边部件。
你肯定能明白,拆解的粒度与方法并不一定是唯一的,选择的部件也未必是唯一的,只要能准确表示结构就行。
这种表示方法开始用时,如果结构比如复杂可能不太好懂,需要多练习一下。为了方便练习,有个网站zi.tools提供了这种表示法的练习工具。有意思的是,这个网站还提供了检索具有特定结构的字符的功能,贴个图大家就很容易明白了,用?代表搜索的部件即可。
这里隐藏了一个问题,即这些表示结构的符号如何输入,最简单的方法就是你在zi.tools这个网站上把字拆好,然后把右边的框内生成的文字复制过来。我猜测一般的输入法应该不包括这种不太常用的符号。
最后,展示一下
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
Unicode
如何
表示
收录
生僻
相关帖子
如何使用DashVector的多向量检索
VonaJS是如何做到文件级别精确HMR(热更新)的?
Flink源码阅读:如何生成StreamGraph
人工智能如何改变 Anthropic 的工作方式
alist如何将默认布局设置为图片布局
Flink源码阅读:如何生成JobGraph
一文读懂RAG架构如何助力AI
一文读懂RAG架构如何助力AI
Flink源码阅读:如何生成ExecutionGraph
如何改变管理者的懒惰!
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
千斤顶
照妖镜
相关推荐
业界
如何使用DashVector的多向量检索
0
297
别萧玉
2025-12-16
业界
VonaJS是如何做到文件级别精确HMR(热更新)的?
1
417
济曝喊
2025-12-17
业界
Flink源码阅读:如何生成StreamGraph
0
355
梁丘艷蕙
2025-12-18
安全
人工智能如何改变 Anthropic 的工作方式
1
218
诀锺
2025-12-18
业界
alist如何将默认布局设置为图片布局
0
619
筒霓暄
2025-12-20
业界
Flink源码阅读:如何生成JobGraph
1
733
钨哄魁
2025-12-20
业界
一文读懂RAG架构如何助力AI
0
748
董绣梓
2025-12-21
业界
一文读懂RAG架构如何助力AI
0
504
康器
2025-12-21
业界
Flink源码阅读:如何生成ExecutionGraph
0
762
唯棉坜
2025-12-21
业界
如何改变管理者的懒惰!
0
524
毡轩
2025-12-22
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
回复
本版积分规则
回帖并转播
回帖后跳转到最后一页
签约作者
程序园优秀签约作者
发帖
陆菊
1 小时前
关注
0
粉丝关注
26
主题发布
板块介绍填写区域,请于后台编辑
财富榜{圆}
3934307807
991124
anyue1937
9994892
kk14977
6845358
4
xiangqian
638210
5
韶又彤
9997
6
宋子
9981
7
闰咄阅
9993
8
刎唇
9993
9
俞瑛瑶
9998
10
蓬森莉
9949
查看更多
今日好文热榜
571
Unicode中如何表示未收录的生僻字 --浅谈ID
421
畅联云和智能物联中台UCC的关系
348
ROS2之URDF建模
223
MQ 选型框架——Kafka/RabbitMQ/RocketMQ
117
CoT论文阅读笔记
986
化整为零、分而治之、异步编排:一文读懂现
222
【Ubuntu】Ubuntu 22.04 与 Windows 跨系统
164
【Agent】MemOS 源码笔记---(7)---MemSched
987
XML中俩个String类型的比较却抛出NumberFor
524
如何改变管理者的懒惰!
426
数据主权的守护者:为什么你需要本地知识库
711
吴恩达深度学习课程四:计算机视觉 第三周
753
RAG效果差?7个指标让你的准确率大幅提升
992
Codex 正在推动开源 AI 模型的训练与发布
268
智能物联中台(ICC)预计一月底发布
815
周五下午5点改完的代码,你敢直接发布上线
891
WPF 使用 RenderTransform 实现高性能平滑
669
美股(纳斯达克/纽交所)数据 API 对接实战
760
位置消偏
135
具身智能:零基础入门睿尔曼机械臂(七)—