首页 > 编程语言 > 详细

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

时间:2017-11-10 12:30:14      阅读:256      评论:0      收藏:0      [点我收藏+]

  如果想把区号从匹配的电话号码中分离,可以添加括号在正则表达式中创建分组,再使用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 正则表达式 利用括号分组

原文:http://www.cnblogs.com/pigwan7/p/7813757.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!