在 Python re.sub 函数中,如何使用 \n 语法引用组 0?
In Python re.sub function, how can I reference group 0 using \n syntax?
在Python re.sub()
的替换参数中,我想引用整个匹配的字符串,组0。但是,它没有按预期工作。
>>> re.sub(r"(\d)", r"[=12=]", "aa11bb22cc33")
'aa\x001bb\x002cc\x003'
请注意,</code> 确实正确地引用了第 1 组。我必须使用 <code>\g<n>
语法来引用第 0 组。
>>> re.sub(r"(\d)", r"\g<0>", "aa11bb22cc33")
'aa111bb222cc333'
我想知道,是否可以使用 \n
语法在替换参数中引用组 0?
不是。但是,您可以在整个表达式周围放置一个捕获组,并用 </code> 引用它,用 <code>
.
引用内部组
>>> re.sub(r"((\d))", r"", "aa11bb22cc33")
>>> 'aa111bb222cc333'
在Python re.sub()
的替换参数中,我想引用整个匹配的字符串,组0。但是,它没有按预期工作。
>>> re.sub(r"(\d)", r"[=12=]", "aa11bb22cc33")
'aa\x001bb\x002cc\x003'
请注意,</code> 确实正确地引用了第 1 组。我必须使用 <code>\g<n>
语法来引用第 0 组。
>>> re.sub(r"(\d)", r"\g<0>", "aa11bb22cc33")
'aa111bb222cc333'
我想知道,是否可以使用 \n
语法在替换参数中引用组 0?
不是。但是,您可以在整个表达式周围放置一个捕获组,并用 </code> 引用它,用 <code>
.
>>> re.sub(r"((\d))", r"", "aa11bb22cc33")
>>> 'aa111bb222cc333'