解释正则表达式

时间:2014-08-06 06:29:33

标签: python regex

这个正则表达式意味着什么?我知道re.sub的功能但无法弄清楚第二部分:

s = re.sub(r'\.([a-zA-Z])', r'. \1', s)
                            ^^^^^^^

有人能解释下划线部分吗?

1 个答案:

答案 0 :(得分:1)

下次你应该提到你正在使用的编程语言,因为正则表达式语法在一种语言与另一种语言之间存在很大差异。此外,当使用正则表达式替换某些东西时,通常第二个参数不是正则表达式,而只是具有特殊语法的字符串,因此了解编程语言也会对此有所帮助。

\1是对第一个捕获组(括号中的表达式)匹配的反向引用。

因此\.([a-zA-Z])匹配一个字母后跟一个字母,并且该字母被捕获(存储/保存/记住),因为它被括号括起并在\1处使用。然后将句号和字母替换为句号,空格和该字母。

示例:

.H变为. H

This.is.a.Test变为This. is. a. Test

相关问题