irgendwie werden meine Änderungen an einer XML-Datei nicht gespeichert. Im Prinzip will ich einige Tags mit re.sub löschen bzw. ändern. Aber anscheinend werde die Änderungen am Ende nicht in die XML geschrieben.
Die RegEx hab ich mit dem internen Tool von PyCharm und mit einem Web-Tool getestet. Die sollten in Ordnung sein.
Code: Alles auswählen
def parseXMLtest(self, xdata):
for t in xdata.findall('.//property[@name="body"]'):
if t.text.lower().find("cdata") > -1:
t.text = re.sub(r"s/<ac:structured-macro ac:name=\"jira\"*[^>]*>(.+?)<\/ac:structured-macro>", r"\1", t.text)
#print("NODDATA", t.text)
t.text = re.sub("<ac:parameter ac:name=\"server\"*[^>]*>(.+?)<\/ac:parameter>", "", t.text)
col = re.compile("<ac:parameter ac:name=\"columns\"*[^>]*>(.+?)<\/ac:parameter>")
print(re.findall(col, t.text))
t.text = re.sub(col, '', t.text)
t.text = re.sub("<ac:parameter ac:name=\"key\"[^>]*>(.+?)<\/ac:parameter>", r"\1", t.text)
t.text = re.sub(r'<ac:parameter ac:name=\"serverId\"[^>]*>(.+?)<\/ac:parameter>', '', t.text)
now = datetime.now()
date_time = now.strftime("%m%d%Y_%H-%M-%S")
fname = date_time+".xml"
xdata.write(fname, pretty_print=True)
Grüße
PEter