美文网首页每天写500字每天写1000字
python 21:match对象的两个方法group()和gr

python 21:match对象的两个方法group()和gr

作者: 金石明镜 | 来源:发表于2019-11-24 21:37 被阅读0次

    一、group()方法

    返回查到到的匹配文本。

    >>>import re

    >>>phoneNumRegex = re.compile(r'\d\d\d-\d\d\d-\d\d\d\d')

    >>>mo = phoneNumRegex.search('My number is 415-555-4242.')

    >>>print('Phone number found:' + mo.group())

    Phone number found:415-555-4242

    二、返回指定分组的匹配文本

    假定想要将区号从电话号码中分离,添加括号将在正则表达式中创建“分组”:(\d\d\d) -(\d\d\d-\d\d\d\d)。然后可以使用group()匹配对象方法,从一个分组中获取匹配的文本。

    正则表达式字符串中的第一对括号是第1组。第二对括号是第2组。

    向group()匹配对象方法传入整数1或2,就可以取得匹配文本的不同部分。向group()方法传入0或不传入参数,将返回整个匹配的文本。

    group()方法在分组的情况下,可以通过指定参数来返回指定分组的匹配文本。

    >>>phoneNumRegex = re.compile(r'(\d\d\d)-(\d\d\d-\d\d\d\d)')

    >>> mo = phoneNumRegex.search('My number is 415-555-4242.')

    >>>mo.group(1)

    '415'

    >>>mo.group(2)

    '555-4242'

    >>>mo.group(0)

    '415-555-4242'

    >>>mo.group()

    '415-555-4242'

    三、一次返回所有分组的匹配文本

    使用groups()方法,返回一个元组。有多少分组就有多少元素。

    >>>mo.groups()

    ('415' ,'555-4242')

    >>>areaCode, mainNumber =mo.groups()

    >>> print(areaCode)

    415

    >>>print(mainNumber)

    555-4242

    相关文章

      网友评论

        本文标题:python 21:match对象的两个方法group()和gr

        本文链接:https://www.haomeiwen.com/subject/cajrwctx.html