试图了解Python re.replace,我试图通过索引或名称来切换组,但是在使用re进行操作时遇到了问题。
让我们说: 行= '23 24“ #我想得到'242 231'
nline = re.sub(r"(\d+) (\d+)", r"\2 \1", line)
#This will result '24 23'
但是如果我在索引后面添加数字-我将获得无效的索引: nline = re.sub(r“(\ d +)(\ d +)”,r“ \ 22 \ 11”,行)
我尝试使用名称组-但未能使其起作用: nline = re.sub(r“(?P \ d +)(?P \ d +)”,r“ \ s2 \ f1”,line)
line = '23 24"
#Trial#1
nline = re.sub(r"(\d+) (\d+)", r"\22 \11", line)
#Trial #2
nline = re.sub(r"(?P<f>\d+) (?P<s>\d+)", r"\s2 \f1", line)
我想知道如何替换后跟另一个数字的组索引
以及如何在后面的引用中使用组名
答案 0 :(得分:3)
尝试以下替代语法:
re.sub(r"(\d+) (\d+)", r"\g<2>2 \g<1>1", "23 24")