Python 正则表达式 利用括号分组

Posted pigwan7

tags:

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

  如果想把区号从匹配的电话号码中分离,可以添加括号在正则表达式中创建分组,再使用group()方法,从一个分组中获取匹配的文本

  正则表达式字符串中,第一个括号是第一组,第二个括号是第二组。向group()方法传入参数1或2,可以获得匹配文本中的不同部分,传入0或者不传参数,将返回整个匹配的文本

>>> import re
>>> m=re.search(r‘(\d{3})-(\d{3}-\d{4})‘,‘My phone number is 012-239-4597‘)
>>> print(m.group(1))
012
>>> print(m.group())
012-239-4597
>>>

  使用groups()方法,可以返回所有的分组

>>> import re
>>> m=re.search(r‘(\d{3})-(\d{3}-\d{4})‘,‘My phone number is 012-239-4597‘)
>>> print(type(m.groups()))
<type ‘tuple‘>
>>> print(m.groups())
(‘012‘, ‘239-4597‘)
>>>

  groups()返回多个值的元组,可以使用多重赋值的技巧,进行赋值

>>> import re
>>> m=re.search(r‘(\d{3})-(\d{3}-\d{4})‘,‘My phone number is 012-239-4597‘)
>>> area_code,main_code = m.groups()
>>> print(area_code)
012
>>> print(main_code)
239-4597
>>>




















以上是关于Python 正则表达式 利用括号分组的主要内容,如果未能解决你的问题,请参考以下文章

42 python中正则中的分组 正则中匹配字符串的起始和结尾以及单词边界

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

Python爬虫编程思想(32):正则表达式的分组

正则表达式括号的作用

正则表达式括号的作用

正则表达式括号的作用