XML 工具

XML 转义先选对插入位置

将内容放入文本节点还是属性值?两种位置需要不同的转义规则。

XML 转义

输入

结果

转换仅在当前浏览器内完成,不上传输入内容。

转换选项

插入位置只影响转义。批量分隔符保留,还原出的换行属于记录内部;JSON 报告保留独立记录边界。

输入 ≤ 1,048,576 个 UTF-16 单元;输出 ≤ 6,291,456 个;批量 ≤ 10,000 条;报告 ≤ 16,777,216 个单元。

38 → 48 个单元 · 3 处替换 · 1 条记录

XML 转义常用于商品名称带有 &、订阅源正文含有尖括号,或配置属性中混入引号的场景。直接把字符串塞进标签并不可靠;先明确目的位置,才能知道哪些字符需要改写。

XML 反转义每次只还原一层实体。它处理的是内容字符串,不会解析标签、加载 DTD,也不会把还原成功等同于整份文档合法。

为什么用 XML 转义

保留属性里的真实空白

XML 转义把回车写成数字引用。属性模式还保护制表符、换行和所选引号,让值放进普通 CDATA 类型属性后仍保留这些字符。

同一段含引号的内容分成文本和属性两条路径,只有属性路径保护相应引号。

批量还原后仍分得清记录

数字换行引用被还原后,一条记录可能显示成多行。JSON 报告分别保存每条记录的输入、输出及原始分隔符,新增换行不会抹去记录边界。

两张独立记录卡保持分开,第一张卡内还原出的换行使其内容扩展。

先确认上下文,再检查结果

01

对准实际属性引号

文本模式保留引号;属性模式只转义你选择的那种引号。不自动补外围引号或标签,复制的是可以插入相应位置的内容片段。

02

决定何时重新计算

默认在停止修改 350 ms 后转换。关闭自动转换会出现主按钮,也可按 Ctrl/Cmd+Enter 执行。任何输入或选项变更都会立即禁用旧结果导出。

03

覆盖之前先看预览

示例与清空先显示替换预览和字符数量,应用后可撤销一次,同时恢复输入与结果。长结果每次可增加显示 20,000 个 UTF-16 单元,导出始终包含全量。

识别引用,定位错误,保存记录

五种内建名称

XML 转义按 XML 字符实体规则识别 amp、lt、gt、quot、apos,区分大小写并要求分号,不把 HTML 的整套实体混进来。

两种数字写法

A 与 A 都还原成 A。十六进制前缀必须使用小写 x,数字里的 A–F 则允许大小写。有效的中文、日文和 emoji 不必强制改成 ASCII。

在原始位置报错

XML 特殊字符可以转义,XML 1.0 禁止的字符却不能通过数字写法变合法。首个错误显示原始行号及 UTF-16 列号,整次处理失败,不留下可导出的部分结果。

处理范围与容量限制

只处理内容字符串
XML 转义不检查标签嵌套、属性语法、元素名称或模式约束。反转义保留原有尖括号和引号,只检查引用本身,不能代替 XML 验证器。
一次一层,不猜实体
< 一次变为 <。  等 HTML 名称、自定义 DTD 实体、裸 &、缺分号引用均报错;不递归反转义,不加载外部实体。
严格采用 XML 1.0 字符范围
NUL、被禁止的控制字符、孤立代理项和 U+FFFE/U+FFFF 均拒绝,数字引用也一样。合法补充平面字符保留,包括标准允许的 U+1FFFE。
不执行解析器空白归一化
编码保护回车,属性模式另保护制表符与换行;还原时保留原始空白。属性保值针对普通 CDATA 类型,DTD 声明的词元化属性仍可能由后续解析器压缩空格。
批量结果不等于一行一条
按原始 CRLF、CR、LF 分记录,保留空行与末尾空行,分隔符不转义。还原 
 会在记录内部产生新行;TXT 不能可靠反推边界,应使用 JSON records 数组。
容量有限,不静默截断
输入最多 1,048,576 个 UTF-16 单元,输出 6,291,456 个,批量 10,000 条,JSON 报告 16,777,216 个单元。超限整次失败。不导入文件、抓取网址、生成 CDATA 包装、强制全 ASCII 或删除非法字符。

XML 转义常见问题

怎样进行字符串的转义和还原?

先选择转义或反转义。生成属性内容时再选引号;还原时只识别合法实体与数字引用,一次去掉一层。XML 转义不会替你添加整个标签。

在线处理字符串会泄露输入数据吗?

请查看输入区下方的隐私说明。若另行使用反馈功能发送内容,那是一次由你选择的操作;反馈不应包含不想分享的原始数据。

反转义后内容不符合预期是什么原因?

最常见的是选错方向或存在多层转义。例如 < 先变成 <,并不会直接变成尖括号。未知实体会报错,原始字符串保留,先查看错误位置再修改。

哪些情况下适合采用数字字符引用?

没有内建实体名称的有效字符可用数字引用,例如   表示不换行空格。本工具还用数字引用保留回车及属性中的制表符、换行;引用禁止字符仍会失败。

Sitemap 里的网址要怎样表示?

网址中的 & 等字符放进 Sitemap 的 XML 内容时仍需要实体转义;URL 百分号编码与 XML 转义是两个步骤。本页不执行 URL 编码,也不验证站点地图结构。

发现了意外结果?

拿一条真实数据试试

用 XML 转义比较同一条含 &、引号与换行的内容在文本和属性位置的结果。