python五十八课——正则表达式(分组)

Posted Hank

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python五十八课——正则表达式(分组)相关的知识,希望对你有一定的参考价值。


演示正则中的替换和切割操作:
在这之前我们先学习一个分组的概念:

分组:
在正则中定义(...)就可以进行分组,理解为得到了一个子组
好处:
1).如果正则中的逻辑比较复杂,使用分组就可以优化代码的阅读性(更有层级感)
2).一旦进行了分组,在正则表达式的后半部分内容中很有可能需要引用子组中的内容;
一旦引用了组,那么这两部分的内容(值)就可以保持一致了
import re
phone=62589999
regex=rd{4}(d)r{3} #r‘...()...()...()..‘
print(re.match(regex,phone))
print(re.match(regex,phone).groups())
print(re.match(regex,phone).group())
print(re.match(regex,phone).group(0))
print(re.match(regex,phone).group(1))

‘‘‘
以下代码有问题:
出现了下标越界的异常:IndexError
原因为正则中只有1个子组,没有index=2这一说,所以报错了...
‘‘‘
# print(re.match(regex,phone).group(2))

phone = 021-52184329
regex = r(?P<one>d{3})(?P<two>-)(?P<three>d{8})
mathobj=re.search(regex,phone)

print(mathobj.groups())
print(mathobj.group())
print(mathobj.group(0))
print(mathobj.group(one))

以上是关于python五十八课——正则表达式(分组)的主要内容,如果未能解决你的问题,请参考以下文章

python五十八课——正则表达式(替换)

python五十九课——正则表达式的拓展内容

python五十七课——正则表达式(多个字符)

Python 学习第十八天 js 正则及其它前端知识

python正则表达式--分组后向引用前(后)向断言

python学习正则表达式进阶