xml - 用于缩进 XML 文件的正则表达式

标签 xml regex pretty-print

是否可以编写一个 REGEX(搜索替换),当在 XML 字符串上运行时将输出缩进很好的 XML 字符串?

如果是这样,REGEX 是什么 :)

最佳答案

Is it possible to write a REGEX (search replace) that when run on an XML string [...anything]

没有。

使用 XML 解析器读取字符串,然后使用 XML 序列化器以“漂亮”模式将其写回。

每个 XML 处理器都有自己的选项,因此它取决于平台,但这里是在 DOM Level 3 LS 兼容实现上工作的有点冗长的方法:

input= implementation.createLSInput();
input.stringData= unprettyxml;
parser= implementation.createLSParser(implementation.MODE_SYNCHRONOUS, null);
document= parser.parse(input);
serializer= implementation.createLSSerializer();
serializer.domConfig.setParameter("format-pretty-print", true);
prettyxml= serializer.writeToString(document);

关于xml - 用于缩进 XML 文件的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/542455/

相关文章:

ruby - 使用 Nokogiri 读取 XML 时出现问题

php - 在 MySQL 中转义正则表达式的用户输入的最佳方法是什么?

compiler-construction - pretty-print 歧义语法

xml - iOS:下载、解包、解码和解析大文件

php - 简单数组重定向

java - 多个正则表达式模式来替换多次出现的图像标签

ruby - 正则表达式从电子邮件地址中查找名称

Haskell:如何漂亮地打印不带引号的字符串?

ruby - 漂亮地打印到 ruby​​ 中的文件

java - 使用 SAX 在节点上运行转换