我有一个类似下面的java字符串,它有多行和空格。需要删除所有这些是一行。
这些是xml标签,编辑器不允许包含少于符号
<paymentAction>
Authorization
</paymentAction>
应该成为
<paymentAction>AUTHORIZATION</paymentAction>
提前致谢
答案 0 :(得分:1)
调用theString.replaceAll("\\s+","")
将用空字符串替换所有空格序列。请确保标签之间的文字也不包含空格,否则它们也会被删除。
答案 1 :(得分:1)
您基本上想要将您拥有的XML转换为Canonical Form。下面是一种方法,但它需要您使用该库。如果您不想依赖外部库,那么另一个选择是使用XSLT。
Apache XML Security项目的Canonicalizer类:
注意:一般不建议处理非xml感知API(String.replaceAll()),因为最终处理特殊/异常情况。
答案 2 :(得分:0)
这是一个开始。可能还不够,但应该是正确的方向。
xml.replaceAll(">\\s*", ">").replaceAll("\\s*<, "<");
但是,我很想说必须有一种方法可以从XML创建文档,然后像Pangea建议的那样以规范形式对其进行序列化。