1

有一个 regx 示例:“一二”使用此 regx 到 \b(\w+)(\s)(\w+)\b 替换为 $3$2$1 然后得到“二一”现在我想用python re.sub:

s="one two"
print re.sub(r"\b(\w+)(\s)(\w+)\b","$3$2$1",s)

这个输出 $3$2$1,而不是“两个一个”。我怎么能在 python 中做到这一点?

4

1 回答 1

2

\number在 python 中用于打印匹配的结果:

>>> s="one two"
>>> print re.sub(r"\b(\w+)(\s)(\w+)\b",r"\3\2\1",s)
two one

请注意,您必须将其设为原始字符串,否则您必须这样做\\3 \\2 \\1(即转义反斜杠)

于 2013-07-13T04:50:53.997 回答