【发布时间】:2015-01-09 14:46:35
【问题描述】:
我想用正则表达式将 SGML 转换为 XML。喜欢:
转换:
<a><ab><abc>111<abc2>222</ab></a>
到:
<a><ab><abc>111</abc><abc2>222</abc2></ab></a>
我编写了以下代码来进行转换:
String a = "<a><ab><abc>abc<abc2>abc2</ab></a>";
a = a.replaceAll("<([^<>]+?)>([^<>]+?)<(?!/\\$1>)", "<$1>$2</$1><");
System.out.println(a);
然而结果不是预期的:
<a><ab><abc>111</abc><abc2>222</ab></a>
我的问题,是否可以使用正则表达式进行转换?如果是,我的代码有什么问题?
【问题讨论】:
-
@dirkk 读完那篇文章后我得了癌症。