【发布时间】:2012-09-05 02:23:12
【问题描述】:
我有一个字符串,它是 XML 数据。删除一些节点并添加一些节点后。 xml 数据中有很多空格(在节点删除期间创建。)
<A>
<B>
</B>
<!-- some node i deleted and lot of white spaces -->
<c>
</c>
<!-- some more node i deleted and lot of white spaces -->
<E>
</E>
字符串操作后的期望输出
<A>
<B>
</B>
<c>
</c>
<E>
</E>
</A>
我可以使用 replaceAll("\s","") 但这甚至会删除换行符,并使 xml 的结构无法在 UI 中显示。
有没有办法在不修剪换行符的情况下修剪它?
编辑:此 XML 数据是 OMElement 的一部分
【问题讨论】:
-
用一个替换两个连续的换行符怎么样?
-
你试过
str.replaceAll("\n+", "\n")吗? -
您可以使用
replaceAll(" ", "")删除文档中的所有空格或类似replaceAll(">\s+<", "\n")将标签之间的所有空格字符(包括空格、制表符和换行符)替换为仅换行符 -
是的,我试过 str.replaceAll("\n+", "\n")。但它给了我想要的结果。字符串 strXmlData = xmlLoadData.toString(); strXmlData = strXmlData.replaceAll("\n+", "\n");原来的 strXmlData 和替换后都是一样的。