用Python在XML文件中查找并替换字符串
我想用Python在一个xml文件中替换字符串。例如:
我想把“enabled”改成“disabled”,在:
<s:global-method-security secured-annotations="enabled"/>
这样做是直接搜索并替换整行比较好,还是说如果找到匹配的行,只替换那一行中的“enabled”更好呢?
2 个回答
1
只需要用 string.replace()
这个方法就可以了:
for line in whateverXMLText.splitlines(): # or whatever arbitrary loop
if line.find("enabled") > -1:
print "Replacing 'enabled' on line: %s" % line
line.replace("enabled", "disabled")
不过,更好的办法可能是使用一个 XML 解析器(xml.dom.minidom
),在解析的时候直接修改属性。
3
一个简单的方法可以是:
for line in fileh:
line = line.replace("enabled", "disabled")
ouf.write(line)
在替换之前,你不需要特意去查找字符串中的“enabled”。
不过,因为这是一个xml文件,我建议使用xml解析器来进行修改。