Python中正则表达式后向引用是如何工作的?

Python中正则表达式后向引用是如何工作的?

分组

我们通过在一对括号中包含它来对正则表达式的部分进行分组。这样,我们使用操作符来处理组而不是单个字符。

捕获组和反向引用

括号不仅可以将子表达式分组,而且还可以创建反向引用。正则表达式的匹配部分字符串被存储在反向引用中。使用反向引用,我们可以重复使用正则表达式的部分。

如果子表达式放在括号中,它可以通过\1或$1等方式访问。

例如,正则表达式\b(\w+)\b\s+\1\b将匹配重复的单词(例如tahiti tahiti),因为括号中的(\w+)将单词捕获到组1中,然后反向引用\1匹配被组1捕获的字符。

示例

import re s = 'Tahiti Tahiti Atoll' 
result = re.findall(r'\b(\w+)\b\s+\1\b', s) 
print result 

输出

这将输出

['Tahiti']

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程