python自带库---re库

python通过re模块提供对正则表达式的支持。使用re的一般步骤是先将正则表达式的

字符串形式编译为Pattern实例,然后使用Pattern实例处理我文本并获得匹配结果,

最后使用Match实例获得信息,进行其他操作。主要用到的方法如下:

1、re.compile(string[,flag]) 将一个正则表达式的字符串转化为Pattern匹配对象

pattern = re.compile(r'd+')

2、re.match(pattern,string[,flags]) 从string的开头开始匹配pattern,遇到无法匹配或已到末尾,立即返回None,反之获取匹配结果

re.match(r'd+','192abc')--->>192

re.match(r'd+','abc192')--->>none

3、re.search(pattern,string[,flags]) 扫描整个string进行匹配pattern,其他同re.match()

re.match(r'd+','abc192')--->>192

4、re.split(patter,string[,maxsplit])按照能够匹配的子串将string分割后返回列表。maxsplit用于指定最大分割次数,不指定,默认则将全部分割。

re.split(r'd+','A1B2C3D4')--->>['A','B','C','D',' ']

5、re.findall(pattern,string[,flags])搜索整个string,以列表形式返回能匹配的全部子串列表

re.findall(r'd+','A1B2C3D4')--->>['1','2','3','4']

6、re.finditer(pattern,string[,flags])搜索整个string,以迭代器形式返回能匹配的全部Match对象。

matchlist = re.finditer(r'd+','A1B2C3D4')

for match in matchlist:

  print match.group()-------->>1  2  3   4 

flag值:

re.I:忽略大小写

re.M:多行模式,改变'^'和'$'的行为

re.S:点任意匹配的模式

原文地址:https://www.cnblogs.com/eihouwang/p/14175412.html