把文本转成 NFC、NFD、NFKC 或 NFKD,看码点数和字节数怎么变,标出哪些字符变了,一键复制,全程浏览器本地
- 本地处理
- 分类 文本
- 适合 把日常写作和运营里的重复清理工作省掉。
标准合成 —— 能合的组合字符合成单个码点(é 还是一个字符)。网页默认形式,存储和比较用它。
规范化后的文本和码点显示在这里。这个工具能做什么
免费在线 Unicode 规范化工具,用浏览器自带的 normalize() 引擎把任意文本 转成 NFC、NFD、NFKC 或 NFKD。同一个看得见的字母可以有两种存法:é 可以是 一个码点(U+00E9),也可以是两个(e 加上组合用的尖音符 U+0301)。它们看着 一模一样,作为字符串却不相等,于是搜索、去重和数据库主键会悄悄漏掉本该 匹配的记录。这个工具把两种写法收拢成一个规范形状,并显示规范化前后的 码点数和 UTF-8 字节数,让你亲眼看到组合标记在 NFC 下被合并、在 NFD 下被 拆开。NFC 和 NFD 是标准形式、可逆;NFKC 和 NFKD 多了一层兼容折叠:全角 ABC 变 ABC、带圈 ① 变 1、fi 连字变 fi。可选的逐字符视图会列出每个码点, 把变了的那些高亮出来。全部在浏览器本地运行,一键复制,分享链接能还原 你当时的文本和所选形式。不上传。
工具细节
- 输入
- 文本
- 页面会根据工具类型展示文本框、数值控件、文件选择或结构化输入。
- 输出
- 即时结果 + 复制
- 结果区优先给出可操作结果,支持项会显示复制、下载或可视化预览。
- 隐私
- 浏览器本地处理
- 主工具逻辑未发现外部 API 调用,输入通常留在当前标签页内处理。
- 保存 / 分享
- 可分享链接状态
- 关键设置会进入 URL,复制链接后别人能复现同一组参数。
- 性能预算
- 首屏 JS ≤ 9 KB
- 没有声明 WASM 依赖,适合快速打开和移动端使用。
- 适用场景
- 文本 · 程序员
- 分类和职业标签用于推荐相关工具、组织内链,并帮助用户快速判断是否适合当前任务。
怎么用
-
1. 输入
把内容粘贴或拖入工具面板。
-
2. 处理
点击按钮,在浏览器内本地处理,文件不上传。
-
3. 复制 / 下载
一键复制结果或下载到本地。
Unicode 规范化工具 适合怎么用
适合在文本进入文档、CMS、表格或提示词前,先清理、对比、整理或提取。
适合文本任务
- 把日常写作和运营里的重复清理工作省掉。
- 让文本更容易对比、粘贴、发布或交给下一个工具。
- 内容还没公开或比较私密时,先在本地处理。
文本检查项
- 留意多余空格、重复行和被误删的标点。
- 长文本先试前几行,再处理全文。
- 先看预览,确认没问题再复制结果。
下一步可以接着做
这些入口会把当前任务接到更完整的工具链里。
真实使用场景
修好漏掉带音符人名的搜索
你的应用里存的 José 是在 Mac 上打的(常是 NFD:e 加组合音符),而搜索框 发来的 José 来自 Windows 键盘(NFC,一个码点)。查询永远匹配不上,用户 一口咬定记录就在那。把两个字符串都粘进来,各自规范成 NFC,看码点数对齐。 然后在代码里于写入时规范一次,这种错位就再也不会发生。
给联系人或商品清单去重
从两个来源合来的 CSV 里,Café 和 Café 看着完全一样,比较起来却是两行, 于是去重把两条都留下了。把这一列过一遍 NFC(若还出现全角或连字变体就用 NFKC),看着相等的条目就变成字节相等,合并成一条。这里显示的字节数变化 一眼就能看出哪些行真的被分解过。
建索引前清掉全角和连字噪声
用户提交的文本里夹着全角 ABC、带圈 ①②③,还有从 PDF 粘来的 fi fl 连字。 这些都不该改变搜索的匹配结果。NFKC 一遍就把它们折成普通的 ABC、123、 fi fl,这样你的搜索索引和相等判断看到的,就是人读到的那些字符,而不是 底下那层格式变体。
讲解或调试 Unicode 等价
解释为什么 JavaScript 里 "é === é" 是 false,让全班看见会更好懂。打出 预合成的 é,切到 NFD,码点数从 1 跳到 2,而字形没变。打开逐字符视图, 指给他们看新冒出来的组合尖音符 U+0301。把网址分享出去,例子会按搭好的 样子原样打开。
常见踩坑
不先规范化就比较字符串。两个看着一样的名字,可能一个是 NFC 单码点,另一个是基字母加组合标记,普通相等判断就返回 false。任何比较、建索引、去重之前,先把两边规范成同一形式。
只需要 NFC 却用了 NFKC。NFKC 会丢信息:它把全角、连字、带圈数字永久折掉。要保留精确外观(展示文本、存档原文)就用可逆的 NFC,NFKC 只留给搜索用的键。
以为 CJK 不会动。中文表意字没有标准分解,但 NFKC 仍会折叠混排文本里的全角拉丁字母和半角假名,所以一段看着全是中文的字符串照样可能变。下结论前先看字节数变化。
隐私说明
规范化完全在你的浏览器标签页里,通过标准的 String.prototype.normalize 调用完成,文本不上传,也不记录。唯一要注意:分享链接会把你的输入和所选 形式写进 URL 查询字符串,所以把链接粘到聊天里,对方服务器的访问日志会 留下这段文本。涉及隐私的内容,请用复制按钮粘贴结果,而不是分享网址。
常见问题
类似工具组合
做你这行的人, 还会一起用这些。