Python入门篇之正则表达式

2019-10-05 15:57:35王冬梅

正则表达式还支持一些处理标志,它会影响正则式的执行方法。
 
处理标志

标志 描述
I或IGNORECASE 忽略表达式的大小写来匹配文本。

2.操作
 

通过re模块,我们就可在python中利用正则式对字符串进行搜索、抽取和替换操作。如:re.search()函数能执行一个基本的搜索操作,它能返回一个MatchObject对象。re.findall()函数能返回匹配列表。
 

>>> import re
>>> a="this is my re module test"
>>> obj = re.search(r'.*is',a)
>>> print obj
<_sre.SRE_Match object at 0xb7d7a218>
>>> obj.group()
'this is'
>>> re.findall(r'.*is',a)
['this is']

MatchObject对象方法

方法 描述
expand(template) 展开模板中用反斜线定义的内容。
m.group([group,...]) 返回匹配的文本,是个元组。此文本是与给定group或由其索引数字定义的组匹配的文本,如果没有组定组名,则返回所有匹配项。
m.groups([default]) 返回一个元组,该元组包含模式中与所有组匹配的文本。如果给出default参数,default参数值就是与给定表达式不匹配的组的返回值。default参数的默认取值为None。
m.groupdict([default]) 返回一个字典,该字典包含匹配的所有子组。如果给出default参数,其值就是那些不匹配组的返回值。default参数的默认取值为None。
m.start([group]) 返回指定group的开始位置,或返回全部匹配的开始位置。
m.end([group]) 返回指定group的结束位置,或返回全部匹配的结束位置。
m.span([group]) 返回两元素组,此元组等价于关于一给定组或一个完整匹配表达式的(m.start(group),m.end(group)))列表
m.pos 传递给match()或search()函数的pos值。
m.endpos 传递给match()或search()函数的endpos值。
m.lastindex
m.lastgroup
m.re 创建这个MatchObject对象的正则式对象
m.string 提供给match()或search()函数的字符串。