编码解码哈希加密格式化时间转换开发生成文本处理网络工具其他工具
首页 / 其他工具 / Unicode字符查询

Unicode字符查询

查字符的 Unicode 码位。

输入
结果

这个工具能做什么

这个工具做的事情很直接:你把一个字符粘进去,它给出这个字符的 Unicode 码位(U+XXXX 形式)、对应的十进制码点、可以直接写进 HTML 的实体写法,以及在 JavaScript 里的转义写法;反过来,你手里只有一串 U+4F60 这样的码位,也能反查出它到底是哪个字。真正的痛点在于很多字符肉眼根本分不清——长得像空格的其实是全角空格,看着一样的引号可能是不同码位的中英文引号,还有 emoji、生僻字、甚至完全不可见的零宽字符,靠眼睛看永远说不清,只有把它落到具体的 unicode码点上才能确认。做字符编码查询、排查乱码或者对齐前后端转义格式时,这一步几乎绕不开。

背后的逻辑是 Unicode 给每一个字符分配了唯一的码位,范围从 U+0000 一直到 U+10FFFF。需要注意的是,JavaScript 内部字符串用的是 UTF-16,基本多文种平面(BMP,U+0000 到 U+FFFF)内的字符一个码元就够,而像 emoji 这类超出 BMP 的字符要用一对代理项(surrogate pair)两个码元来表示。工具取字符时用的是 codePointAt 而不是老的 charCodeAt,拿到的是真正的码点而非半个代理项;随后把它转成十六进制就是 U+XXXX,转十进制就是码位查询里常说的十进制码点,HTML 实体则有 &#十进制; 和 &#x十六进制; 两种写法,JS 转义在 BMP 内是 \uXXXX、超出时用 ES6 的 \u{XXXXX}。整个字符编码查询过程都在浏览器本地完成,输入的内容不会上传。

举两个常见例子。一是接口调试:后端返回的 你好 你看不懂,把 U+4F60 丢进反查,立刻知道是「你」,省去心算或翻表;二是排查对不齐的排版:一段文字里某个「空格」怎么都对不齐,查一下发现它是 U+00A0 不间断空格或者 U+3000 全角空格,而不是普通的 U+0020,问题一下就定位了。类似地,想把某个 emoji 写进代码,先查出 😀 是 U+1F600,就能直接得到对应的 JS 转义和 HTML 实体,不用在编辑器里复制粘贴一个不可见的字符。反查一串 unicode码点、正查一个陌生符号,是日常里用得最多的两个方向。

有几个容易踩的点。首先码位不等于字节数:一个 unicode码点在 UTF-8 下可能占 1 到 4 个字节,这个工具给的是码位和转义写法,不是它序列化成 UTF-8 后的字节序列,别把两者混为一谈。其次是组合字符,比如带音标的 é 有时是单一码位 U+00E9,有时是基础字母 e 加一个组合重音记号两个码位拼出来的,看着一个字、实际是两个码位,反查时要留意。另外 U+D800 到 U+DFFF 这段是代理项专用区间,本身不对应任何可显示字符,单独出现通常意味着字符串被截断或者编码出了问题。

Unicode字符查询是一个免费的在线工具,打开网页就能用,不用下载也不用注册。平时大家搜的“unicode查询”、“字符码位”、“unicode码点”,说的都是这个。

常见使用场景

使用方法

  1. 把内容粘贴到输入框(生成类工具直接设置选项)。
  2. 按需要选择选项,点操作按钮。
  3. 结果出现在下方,点「复制结果」即可带走。

常见问题

U+XXXX 是什么意思,为什么有的四位有的五位?
U+ 后面跟的是字符 Unicode 码位的十六进制值。BMP 内的字符通常写成四位(如 U+4F60),超出 BMP 的会是五到六位(如 U+1F600),位数由数值大小决定,不足四位一般补零对齐。
为什么一个 emoji 的 JS 转义有时是 😀,有时是 \u{1F600}?
因为 emoji 超出了 BMP,UTF-16 要用代理对两个码元来表示,😀 就是这一对代理项;而 ES6 支持用 \u{1F600} 直接写码点。两种写法指向同一个字符,取决于你的运行环境是否支持后者。
查出来的码位和这个字符占几个字节是一回事吗?
不是。码位是字符在 Unicode 里的编号,字节数取决于用哪种编码序列化——同一个码位在 UTF-8 下可能是 1 到 4 字节,在 UTF-16 下是 2 或 4 字节。工具给的是码位、码点和转义写法,不直接给 UTF-8 字节序列。
HTML 实体里的 你 和 你 有区别吗?
没有本质区别,你 是十进制实体、你 是十六进制实体,都表示同一个字符,浏览器渲染结果完全一样。选哪种看个人习惯,或者跟现有代码保持一致即可。
使用时需要联网吗,输入的字符会被上传吗?
不会上传,正查和反查都在浏览器本地用 JavaScript 完成,打开页面后即使断网也能用,适合处理不方便外发的内部字符或数据。

相关工具

查看全部「其他工具」工具 →

相关名词解释