Python:如何使用正则表达式进行搜索+替换

时间:2013-03-22 21:10:53

标签: python regex

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

假设我有一个字符串foo,其中包含<bar>something</bar>形式的XML。我想更改something中的<bar>...</bar>,让我们更改为<bar>something_else</bar>

我将如何做到这一点?

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

1 个答案:

答案 0 :(得分: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文档。

相关问题