正则表达式缩进XML文件

Tob*_*len 3 regex xml pretty-print

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

如果是这样的话REGEX :)

Gre*_*reg 5

如果你不使用正则表达式,那么这样做会更简单.事实上,我甚至不确定正则表达式是否可行.

大多数语言都有XML库,可以使这项任务变得非常简单.你用的是哪种语言?


bob*_*nce 5

是否可以编写一个REGEX(搜索替换),当在XML字符串[...任何]上运行时

没有.

使用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);
Run Code Online (Sandbox Code Playgroud)