所以我有一个字符串,我也有一个正则表达式的字符串。我只想在该字符串中添加8到一个数字。我想知道如何更改组的值,然后将匹配对象返回到字符串。
这是我想要做的一个例子。
m = re.match(r"(\w+) (\w+)", "Isaac Newton, physicist")
m.group(1) = 'john'
//then some how return the value back to a string
所以字符串将是“john Newton,物理学家”
答案 0 :(得分:3)
您需要使用re.sub
而不是re.match
,并使用repl
中匹配的已捕获群组。例如:
>>> import re
>>> re.sub(r"(\w+) (\w+)", r"john \2", "Isaac Newton, physicist")
'john Newton, physicist'
此处r"john \2"
表示"将匹配替换为单词'john'
,将第二个捕获的组替换为pattern
&#34; 。< / p>