Ich habe den Anfragetext aus einer Soaupui Anfrage extrahiert und ich versuche, alles von mit einem neuen Header zu ersetzen. Ich habe mehrere verschiedene Ausdrücke ausprobiert, aber ich habe Probleme mit der Übereinstimmung, weil der Text neue Zeilen enthält.Regex - Ersetzen Sie Text zwischen den Tags durch neue Zeilenzeichen
Unten ist die neueste, die ich versucht habe
strRequest3 = strRequest3.replaceAll("<soapenv:Envelope(.*?
\\R)<soapenv:Header/>","<soap:Envelope " + strNewHeader + "</soap:Header>");
log.info strRequest3
XML-Beispiel unten, wo ich versuche, eine neue erste Zeile und Kopf Ich versuche
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:urn="urn:dhs-gov-au:ccs:pms:sessionreport">
<soapenv:Header/>
<soapenv:Body>
Alle Ideen, was Regex einfügen um das oben genannte zu erreichen, wäre sehr geschätzt
Danke
Verarbeiten Sie nicht XML (oder HTML für diese Angelegenheit) mit regulären Ausdrücken. Nur ... nicht. –
Ich habe versucht, XMLParser und XMLSlurper in der ersten Instanz zu verwenden, kam aber nicht sehr weit. Ich könnte den Text aus den Tags extrahieren, aber ich brauche die ganze Menge, Tags, Werte, Namespaces usw., so dass es einfacher schien, es auf diese Weise zu machen. Offen für Verbesserungsvorschläge – user3803807
@ user3803807, was ist Eingabe und erwartete XML? Übrigens, bezieht sich das auf Ihre vorherige [Frage] (https://stackoverflow.com/questions/47091167/extract-soap-header-out-of-request-and-ad-it-to-following-request)) was wurde schon gelöst? – Rao