Unicode 编码转换通常指把文字写成 Unicode 码点的转义形式,例如“中”的码点是 U+4E2D,写成 \u4e2d。下面重点说明匹配与校验写法。
Unicode编码相关的常用正则表达式
- 匹配 \uXXXX 转义:\\u[0-9a-fA-F]{4}
- 匹配常用汉字(基本区):[\u4e00-\u9fff]
- 匹配零宽字符:[\u200b-\u200f\ufeff]
不同语言中反斜杠可能需要再转义一次;用于校验时记得加上 ^ 和 $。
示例
输入:a+b=c
转换结果:a+b=c
说明:非 ASCII 字符写成 \uXXXX,ASCII 原样保留。
规则说明
- JSON、JavaScript、Java 字符串支持 \uXXXX
- Python 字符串支持 \uXXXX 和 \UXXXXXXXX(8 位)
- ES6 起 JavaScript 支持 \u{1F600} 写法
- CSS 中写作 \4E2D,HTML 中写作 中
JavaScript 示例
下面是 JavaScript 中处理Unicode编码的常用写法:
const s = "中文😀";
[...s].map(c => "U+" + c.codePointAt(0).toString(16).toUpperCase());
// ["U+4E2D","U+6587","U+1F600"]
JSON.parse('"\\u4e2d"'); // "中"运行前确认输入的字符集(推荐 UTF-8),结果可以用本站工具交叉核对。
本站的Unicode转换工具可以直接处理,计算在浏览器本地完成,适合快速核对结果。
常见问题
【emoji 为什么是两个 \u?】emoji 码点大于 U+FFFF,在 UTF-16 中用一对代理项表示。
【汉字的 Unicode 范围是多少?】常用汉字在 U+4E00–U+9FFF,扩展区 A 在 U+3400–U+4DBF,更多扩展区在 U+20000 以上。
【JSON 里的中文变成 \u 怎么办?】这是合法的 JSON,解析后会还原;Python 可用 json.dumps(obj, ensure_ascii=False) 直接输出中文。
文中示例可以在本站对应工具中验证;处理密码、证件号等敏感数据时,请注意保护隐私。