0

我正在编写一个 Python 脚本,我需要在其中进行一些搜索并替换一些类似 XML 的字符串。

假设我有一个foo包含一些 XML 格式的字符串<bar>something</bar>。我想改变something里面的<bar>...</bar>,比方说<bar>something_else</bar>

我该怎么做呢?

抱歉,如果这是一个新手问题,但我对 Python 还是很陌生。我通读了 Python 正则表达式文档,但这只会让我更加困惑。(实际上我发现正则表达式在其他上下文/语言中也令人困惑,所以这不一定是 Python 的错 :))

4

1 回答 1

1

这是一个简单的示例,说明您将如何使用lxml.etree,让您沿着正确的道路开始(基于上面的评论):

text = """<tag><innertag>text</innertag>more text</tag>"""
import lxml.etree
xml = lxml.etree.fromstring(text)
node = xml.find('innertag')
node.text = "new text"
lxml.etree.tostring(xml)
'<tag><innertag>new text</innertag>more text</tag>'

请参阅lxml文档。

于 2013-03-22T21:22:20.980 回答