我有一个 XML 文件,我想格式化一个 XML 文件以删除像“ <scientific_max></scientific_max>
”这样的标签。我使用了该代码,但它不起作用
String regex = "<([a-z_]+)></($1)>";
result = result.replaceAll(regex, "");
祝你今天过得愉快!
如果您坚持使用正则表达式执行此类任务,您可能想知道反向引用在 java中表示为\n
,而不是$n
:
String regex = "<([a-z_]+)></\\1>";
result = result.replaceAll(regex, "");
Java 在文件的模式匹配和字符串替换方面并不是最好的,如果您正在考虑基于标签提取数据,请使用 jaxb
如果您想对 xml 进行永久更改,您可以使用 sed
sed -i 's/<\*scientific_max>*$//' input_xml.xml