不可见 / 零宽字符检测
开发
粘贴文本,工具会高亮每个空白与不可见 Unicode:普通空格显示为中点、制表符显示为箭头、换行显示为 ¶、NBSP 为琥珀色、零宽为红色、双向 / 格式标记为品红。底部列出所有发现的不可见码点,一键清理可移除——非常适合修复坏掉的 JSON、奇怪的密码、复制粘贴后编译不过的代码。
—
图例
- · 普通空格
- → 制表符
- ¶ 换行
- ZW 零宽字符
- ␣ NBSP (U+00A0)
- FMT 其他不可见 / 格式字符
可视化
HelloZWworld¶ This→line·has·a·tab.¶ Trailing·spaces·here.¶ ···Leading·spaces·here.¶ A␣non-breaking␣space.¶ A00ELRM·and·a02ALRE·inside.¶ ¶ A·blank·line·above.
发现的不可见字符
- U+200BZero-width space×1
- U+0009Tab×1
- U+00A0NBSP (non-breaking space)×2
- U+200ELeft-to-right mark×1
- U+202ALeft-to-right embedding×1
清理选项
清理后
Helloworld This line has a tab. Trailing spaces here. Leading spaces here. A non-breaking space. ALRM and aLRE inside. A blank line above.
使用方法
- 粘贴或输入文本。
- 查看可视化——彩色点 / 箭头标记空白,ZW 标记零宽。
- 查看「发现」列表了解哪些码点在隐藏。
- 切换清理选项后复制清理结果。
常见问题
- 零宽字符是什么?
- 宽度为 0 的 Unicode 码点(U+200B、U+200C、U+200D、U+FEFF 等)。视觉上没有宽度但仍计入字符——「字符串多了 1 字节」类 bug 的常客。
- NBSP 是什么?
- 不换行空格(U+00A0)。看似普通空格但不会换行。一些文字处理器会在数字与单位间自动插入;把它粘到 JSON / 代码会出问题。
- 双向(bidi)标记是什么?
- U+202A–U+202E(LRE / RLE / PDF / LRO / RLO)会覆盖视觉方向。多语言文本中有用,但混入 URL 或文件名时是已知的钓鱼向量。
- 清理是无损吗?
- 多半是——移除零宽与规范化换行通常安全。折叠空白与去行尾空白可能改变你在意的格式,请贴回前先确认。