Unicode 规范化对比
NFC/NFD/NFKC/NFKD 转换、逐码点差异与规范化不匹配检测,浏览器本地处理
单串规范化四形式
NFC与输入相同
café́
cU+0063aU+0061fU+0066éU+00E9́U+0301
\u0063\u0061\u0066\u00E9\u0301
NFD与输入不同
café́
cU+0063aU+0061fU+0066eU+0065́U+0301́U+0301
\u0063\u0061\u0066\u0065\u0301\u0301
NFKC与输入相同
café́
cU+0063aU+0061fU+0066éU+00E9́U+0301
\u0063\u0061\u0066\u00E9\u0301
NFKD与输入不同
café́
cU+0063aU+0061fU+0066eU+0065́U+0301́U+0301
\u0063\u0061\u0066\u0065\u0301\u0301
黄色高亮为组合记号(叠加在基础字符上的符号)。
两串是否"看着一样却不相等"
严格相等 (===):不相等
NFC
一致
NFD
一致
NFKC
一致
NFKD
一致
规范化不匹配:两串直接比较不相等,但都在 NFC 下相等——这正是"看着一样却不相等"的根因。做文本处理前先统一规范化(推荐 NFC)即可解决。
关于 Unicode 规范化
- 同一可视字符可有预组合(é = U+00E9)与分解(e + ◌́ = U+0065 U+0301)两种编码,直接比较会失败。
- NFC 先分解再组合(适合存储/展示);NFD 全分解(适合按基字符检索);NFKC/NFKD 额外做兼容分解(全角→半角、连字 fi→f+i)。
- 做去重、比较、匹配前,先把两侧统一到同一种形式(多为 NFC)。
关于 Unicode 规范化对比 工具
Unicode 规范化对比 是云海百宝箱提供的一个免费在线工具。NFC/NFD/NFKC/NFKD 转换、逐码点差异与规范化不匹配检测,浏览器本地处理 该工具完全在浏览器中运行,无需下载安装任何软件,跨平台支持 Windows、Mac、Linux 及移动设备,数据在本地处理不上传服务器。
与 Unicode 规范化对比 配合常用的同类工具: Base64 编码/解码、URL 编码/解码、十六进制转换、Unicode 编码/解码、HTML 实体编码/解码、二进制转换
Unicode 规范化对比 使用方法
- 在输入框中输入或粘贴需要处理的内容
- 选择相应的处理选项或参数
- 点击"处理"或"转换"按钮获取结果
- 点击"复制"按钮可一键复制结果到剪贴板