Unicode 字符查找

粘贴一个来历不明的字符、用户贴进来的奇怪空白、字体预览里的字形,或是让正则失效的表情符号,查找就会返回它的 Unicode 代码点(U+XXXX)和十六进制的原始 UTF-8 字节,每个字符一行。

如何识别 Unicode 字符

  1. 1

    粘贴字符

    你可以粘贴单个字形或整段字符串:每个字符按顺序分析。

  2. 2

    读取代码点

    获得标准的 U+ 表示法,大写并用零补足到至少四位十六进制数字。

  3. 3

    检查 UTF-8 字节

    查看该字符在磁盘或传输时占用的 1 到 4 个字节序列。

  4. 4

    复制结果

    输出是 CSV 格式的表格(字符、代码点、UTF-8 字节),可以选中后粘贴到电子表格或缺陷报告中。

用查找可以做的典型排查工作

大多数 Unicode 问题在屏幕上看起来完全一样。要区分普通空格和不间断空格,或区分弯撇号和 prime,唯一的办法就是检查代码点。

查找能解决的常见陷阱

看起来像 实际上是 代码点
空格 不间断空格 U+00A0
空格 窄不间断空格 U+202F
(无) 零宽空格 U+200B
(无) 零宽连接符 U+200D
撇号 右单引号 U+2019
撇号 prime(英尺/分) U+2032
连字符 短破折号 U+2013
连字符 不间断连字符 U+2011

UTF-8 字节结构一览

  • 1 字节,ASCII,U+0000 到 U+007F(0xxxxxxx)
  • 2 字节,拉丁补充、阿拉伯文、希伯来文(110xxxxx 10xxxxxx)
  • 3 字节,CJK,大多数符号(1110xxxx 10xxxxxx 10xxxxxx)
  • 4 字节,表情符号、罕见文字(11110xxx 10xxxxxx 10xxxxxx 10xxxxxx)

如果数据库列采用固定字节长度,一个 4 字节的表情符号即使只显示为一个字形,也会占用四个位置,这是常见的截断错误来源。

常见问题

通常是文件开头的 BOM 标记(U+FEFF),或文字处理软件留下的零宽连接符。把其中一个粘贴到查找里,它会立刻告诉你,然后用简单的查找替换就能删掉。

可以。查找会逐字符处理,所以整个词会为每个字符生成一行,附带它的代码点和 UTF-8 字节。

代码点是字符的抽象身份:无论存在哪里,U+00E9 始终是 “é”。UTF-8 是把代码点转成字节的多种编码之一;同一个 “é” 在 UTF-8 中是两个字节 C3 A9,在 Latin-1 中却是单个字节 E9。

会。查找在我们的服务器上计算:你粘贴的字符会被发送、分析,代码点和 UTF-8 字节会立即返回。我们不会保存你提交的文本。

相关工具

此工具还提供其他语言版本