用长度相同的字符串替换RegEx
发布于 2021-01-29 17:32:43
我想用具有相同数量标签的重复字符序列替换XML标签。
例如:
<o:LastSaved>2013-01-21T21:15:00Z</o:LastSaved>
我要替换为:
#############2013-01-21T21:15:00Z##############
我们如何为此使用RegEx?
关注者
0
被浏览
51
1 个回答
-
re.sub
接受替代功能:re.sub(pattern, repl, string, count=0, flags=0)
如果
repl
是函数,则在每次非重叠发生模式时都会调用它。该函数采用单个match对象参数,并返回替换字符串。这是一个例子:
In [1]: import re In [2]: def repl(m): ...: return '#' * len(m.group()) ...: In [3]: re.sub(r'<[^<>]*?>', repl, ...: '<o:LastSaved>2013-01-21T21:15:00Z</o:LastSaved>') Out[3]: '#############2013-01-21T21:15:00Z##############'
我使用的模式可能需要打磨,我不确定匹配XML标签的规范解决方案是什么。但是你明白了。