re模块中match对象的方法和属性

 属性和方法 说     明
 Pos 搜索的开始位置
 Endpos 搜索的结束位置
 String 搜索的字符串
 Re 当前使用的正则表达式的对象
 Lastindex 最后匹配的组索引
 Lastgroup 最后匹配的组名
 group(index=0) 某个分组的匹配结果。如果index等于0,便是匹配整个正则表达式
 groups() 所有分组的匹配结果,每个分组的结果组成一个列表返回
 Groupdict() 返回组名作为key,每个分组的匹配结果座位value的字典
 start([group]) 获取组的开始位置
 end([group]) 获取组的结束位置
 span([group]) 获取组的开始和结束位置
 expand(template) 使用组的匹配结果来替换模板template中的内容,并把替换后的字符串返回

分组解析实例:

import re
p = re.compile(r"(abc)\1")
m = p.match("abcabcabc")
print m.group(0)
print m.group(1)
print m.group()

p = re.compile(r"(?P<one>abc)(?P=one)")
m = p.search("abcabcabc")
print m.group(0)
print m.group("one")
print m.groupdict().keys()
print m.groupdict().values()
print m.re.pattern

第二行:定义了一个分组"(abc)",在后面使用"\1"再次调用该分组。即compile()返回1个包含2个分组的正则表达式对象p.
第三行:p.match()对字符串"abcabcabc"进行搜索,返回一个match对象m
第四行:调用match对象的group(0)方法,将匹配整个表达式,输出结果:abcabc
第五行:调用match对象的group(1)方法,返回第一次匹配成功的结果,输出结果为:abc
第六行:默认情况下,返回分组0的结果,输出结果:abcabc
第八行:给分组命令,"?P<one>"中的"one"表示分组的名称。"(?P=one)"调用分组"one",相当于"\1"
第十行:输出分组"one"的结果,输出结果:abc
第十一行:获取正则表达式中分组的名称,输出结果为:['one']
第十二行:获取正则表达式中分组的内容,输出结果为:['abc']
第十三行:获取当前使用的正则表达式,输出结果:(?P<one>abc)(?P=one)

转:http://xukaizijian.blog.163.com/blog/static/170433119201111213111562/


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值