【发布时间】:2017-08-22 14:18:29
【问题描述】:
我有一个字符串形式的 XML。
<Message>
<Header>
<MsgId></MsgId>
<ClientAppSeq>CNB110833</ClientAppSeq>
<ClientAppGrpSeq>CNB</ClientAppGrpSeq>
<Status>
<System>1111111111</System>
<StatusCode>2222222222</StatusCode>
<Severity>3333333333</Severity>
<StatusDesc>4444444444</StatusDesc>
</Status>
</Header>
<TrxSvcRq>
<Tx123Rq>
<ContentHeader>
<Filler1></Filler1>
<MessageType></MessageType>
<MessageLength></MessageLength>
<CycleNumber>170523</CycleNumber>
<MessageNumber>200257</MessageNumber>
</ContentHeader>
<TitleHeader>
<MessageNumber>abcdefg</Message>
<Title>HIHIHIHI</Title>
</TitleHeader>
</Tx123Rq>
</TrxSvcRq>
</Message>
我想只换下20057
<ContentHeader></ContentHeader>
我该怎么做?
有人可以帮帮我吗?
谢谢
【问题讨论】:
-
str.replace("<MessageNumber>200257</MessageNumber>", "<MessageNumber>123456</MessageNumber>"). -
注意:
String.replace的第一个参数不是正则表达式(如标题所示):它是文字字符串。如果你想要正则表达式(这里实际上不需要),请使用String.replaceAll。 -
谢谢你的回复..但实际上我们不知道xml字符串是什么......
200257 可能是..568746 ....我该怎么做? -
@bill 请看我的回答
-
这里提供的所有答案都非常脆弱。 改用真正的 XML 解析器。可以找到许多使用真实 XML 解析器以正确方式执行此操作的示例,包括重复链接中显示的代码。