Unicode 转义
文本与 \uXXXX 转义序列互转,支持代理对与 emoji
先选择四位格式或花括号码点格式,再编码;用于 JSON 时选择四位格式,解码支持这两种写法。
示例
输入
中文
示例结果
\u4e2d\u6587
选择四位格式。解码两段转义可还原原文。
技术细节与边界
四位写法 \uXXXX 表示一个 UTF-16 码元;超过 U+FFFF 的码点需要一对代理码元。\u{...} 直接表示码点,最大为 U+10FFFF,但不是合法的 JSON 字符串转义。此工具只处理 Unicode 转义,不替代 JSON.stringify 对引号和反斜杠的完整处理。
关于此工具
将 Unicode 字符转为反斜杠 u 转义或还原,支持四位 UTF-16 写法和花括号码点写法,可选择只转义非 ASCII 字符或全部字符。适合查看配置、源码和日志中的字符表示。
适用场景
- 把源码里的中文 / emoji 换成纯 ASCII 的 \u 转义串。
- 解读 log 里的一堆 `\u5927\u7237` 到底是什么。
操作步骤
- 放入文本或含 \u 的转义串。
- 按 Escape 编码,或 Unescape 解码。
注意事项
默认对 ASCII 可打印字符不做转义,只处理非 ASCII。BMP 外字符使用 `\u{XXXXXX}` 大括号写法。
常见问题
- emoji 会被拆成两个 \uXXXX 吗?
- 若目标语言只支持 `\uXXXX`(例如老式 JS 字面量),emoji 会以 UTF-16 代理对形式展开为两个 `\u`。本工具默认使用 `\u{...}` 大括号,避免代理对。
- 为什么转换结果不能直接放进 JSON?
- 花括号格式不属于 JSON 语法,而且普通引号或反斜杠可能尚未转义。生成完整 JSON 字符串请使用 JSON 序列化器。
- 会同时处理反斜杠 n 换行转义吗?
- 不会,它只处理 Unicode u 转义。完整字符串字面量应交给对应语言的解析器。
- 为什么超出基本多文种平面的字符会产生两段转义?
- 四位格式表示 UTF-16 码元,超出 U+FFFF 的码点需要一对高、低代理项。花括号格式可以用一段表示码点,但不属于 JSON 的转义语法。
相关工具