zoukankan      html  css  js  c++  java
  • python 基础 8.5 re 的match对象

    #/usr/bin/python
    #coding=utf-8
    #@Time   :2017/11/18 21:49
    #@Auther :liuzhenchuan
    #@File   :match对象.py
     
    import re
    prog = re.compile(r'(?P<tagname>abc)(.*)(?P=tagname)')
    result1 = prog.match('abclfjlad234sjldabc')
    print(result1)
    print(result1.groups())
    print result1.group('tagname')
    print(result1.group(2))
    print(result1.groupdict())
     
    >>>
    <_sre.SRE_Match object at 0x027B6CC8>
    ('abc', 'lfjlad234sjld')
    abc
    lfjlad234sjld
    {'tagname': 'abc'}
     
    解释:
    1. 我们可以看到result1已经由字符串转换成了一个正则对象。
    2. resule.groups()可以查看出来所有匹配到的数据,每个()是一个元素,最终返回一个tuple
    3. group()既可以通过下标(从1开始)的方式访问,也可以通过分组名进行访问。
    4. groupdict只能显示有分组名的数据
     
     
    group([group1, …]): 
    获得一个或多个分组截获的字符串;指定多个参数时将以元组形式返回。group1可以使用编号也可以使用别名;编号0代表整个匹配的子串;不填写参数时,返回group(0);没有截获字符串的组返回None;截获了多次的组返回最后一次截获的子串。
    groups([default]): 
    以元组形式返回全部分组截获的字符串。相当于调用group(1,2,…last)default表示没有截获字符串的组以这个值替代,默认为None
    groupdict([default]): 
    返回以有别名的组的别名为键、以该组截获的子串为值的字典,没有别名的组不包含在内。default含义同上。
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
  • 相关阅读:
    软件测试 -- alpha测试和beta测试的区别
    软件测试--各种测试的概念
    linux 安装memcached
    Visual Studio 2013 Preview
    基于HAL库STM32的FSMC驱动8位TFTLCD屏
    LM358电压跟随器
    广耦的应用
    MOS管的开关作用
    三极管的开关作用
    STM32的BOOT0 BOOT1的选择
  • 原文地址:https://www.cnblogs.com/lzcys8868/p/7858139.html
Copyright © 2011-2022 走看看