我想在文本中找到一些已知的前缀和后缀,并用新的前缀和后缀替换它们,保持它们之间的原始文本不变。
示例:我想将<h1>Title</h1>
更改为<h2>Title</h2>
其中&#34;标题&#34;可以是我不知道的任何文字。
我使用python,我发现如何更改前缀和后缀:
s = "<h1>Title</h1>"
replaced = re.sub(r'(<h1>).*?(</h1>)', r'<h2>new text</h2>', s)
print(replaced)
这会打印<h2>new text</h2>
。
但是,如何在标签之间打印原始文本?
谢谢!
答案 0 :(得分:1)
作为anubhava has already commented,您应该使用组:
replaced = re.sub(r'<h1>(.*?)</h1>', r'<h2>\1</h2>', s)
这是您的原始正则表达式,但您不需要为前缀和后缀创建组,只有内容足够:
device_id