python re.match group:\ number后面的数字

时间:2012-03-04 05:35:51

标签: python regex numbers regex-group

在Python匹配模式中,如何在使用1之类的数字进行反向引用后匹配\1之类的字面数字?

为此,我尝试了替换模式中可用的\g<1>语法,但它在我的匹配模式中不起作用。

我有一个更大的问题,我想用一个执行以下有点不寻常的任务的函数来解决。任务是动态构造模式,以便每个模式匹配在某些位置具有重复数字并在剩余位置具有特定数字的数字序列。

2 个答案:

答案 0 :(得分:2)

我注意到我不需要\g<1>语法。相反,我可以使用几种技术之一将\2之类的数字反引用与其后面的数字9分开。以下是三种这样的技术:

  • 非捕获组(?:\2)9
  • 一个\2{1}9
  • 的其他不必要的量化
  • 使用其他不必要的字符类仅包含反向引用\2[9]
  • 后面的数字

答案 1 :(得分:2)

将您想要匹配的数字字面地放在自己的字符类\1[1]或组\1(1)中,以便括号或括号将数字与反向引用分开。