【发布时间】:2017-11-07 04:26:22
【问题描述】:
我已经从 soaupui 请求中提取了请求文本,我正在尝试用新的标头替换所有内容。我尝试了几种不同的表达方式,但我认为匹配有问题,因为文本包含换行符。
下面是我尝试过的最新的一个
strRequest3 = strRequest3.replaceAll("<soapenv:Envelope(.*?
\\R)<soapenv:Header/>","<soap:Envelope " + strNewHeader + "</soap:Header>");
log.info strRequest3
下面是我尝试插入新的第一行和标题的示例 XML
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:urn="urn:dhs-gov-au:ccs:pms:sessionreport">
<soapenv:Header/>
<soapenv:Body>
任何关于我可以尝试实现上述正则表达式的想法将不胜感激
谢谢
【问题讨论】:
-
不要使用正则表达式处理 XML(或 HTML)。只是...不要。
-
我尝试在第一个实例中使用 XMLParser 和 XMLSlurper,但并没有走得太远。我可以从标签中提取文本,但我需要全部、标签、值、命名空间等,所以这样做似乎更容易。接受改进建议
-
@user3803807,什么是输入和预期的 xml?顺便问一下,它和你之前已经解决的question 有什么关系吗?