关于此工具
源代码字符串转义 / 反转义工具将任意文本转为你所选编程语言的安全字符串字面量,或将字面量反向还原为纯文本。当你需要把多行块、路径或含引号的文本粘贴进源代码而不破坏它时,这就是随手可用的帮手。一切都在你的浏览器中作为纯字符串转换运行;不会上传任何内容。
每种语言使用各自的转义表。JavaScript 和 JSON 转义反斜杠、双引号和控制字符集(\n \r \t \b \f),并对其他控制字符或非 ASCII 字符输出 \uXXXX。Java 使用相同的 C 风格字符集,并对 UTF-16 码元使用 \uXXXX。C、C++ 和 C# 增加了 \0 \a \v 以及针对字节的 \xHH。SQL 将单引号加倍('' ),这是在字符串字面量中嵌入引号的 ANSI 标准做法。XML/HTML 将 & < > " ' 替换为 & < > " ',并对其他不可打印字符输出 &#nnn;。
反转义会反向使用相同的表:它为 C 系语言解析 \n、\t、\xHH、\uXXXX 和 \u{...} 序列,为 SQL 折叠成对的引号,并为 XML/HTML 解析命名和数值(&#nnn; / &#xHH;)实体。选择目标语言以及转义还是反转义。此工具比仅支持 JSON 和仅支持 HTML 的转义器更全面——它在一处覆盖全部七个目标。
常见问题
支持哪些语言?
JavaScript、JSON、Java、C#、C/C++、SQL 和 XML/HTML。每种都使用各自的转义规则——例如 JavaScript/Java/JSON 用 \uXXXX,C 系用 \xHH 和 \0,SQL 用成对单引号,XML/HTML 用命名加数值实体。
它如何处理非 ASCII 字符?
对于 JavaScript、JSON 和 Java,它输出 \uXXXX(对 U+FFFF 以上的字符使用代理对)。C 和 C# 可对字节使用 \xHH。XML/HTML 保留可打印的 Unicode 原样,仅将五个标记字符加控制码转义为 &#nnn;。
它能反向还原转义后的字符串吗?
可以。将方向切换为反转义,它会把该语言的转义序列解析回纯文本——\uXXXX、\xHH、\u{...}、成对的 SQL 引号,以及命名或数值的 HTML/XML 实体都会被解码。
这与 JSON 或 HTML 转义器有何不同?
那些只处理单一格式。此工具在一处覆盖七种语言目标及其各自的转义表,因此你可以为 Java 字面量、SQL 字符串或 XML 属性转义同一段文本,而无需切换工具。