[python 学习]正则表达式
re 模块函数
re 模块函数和正则表达式对象的方法
match(pattern,string,flags=0) 尝试使用带有可选的标记的正则表达式的模式来匹配字符串。如果匹配成功,就返回匹配对象;如果失败,就返回None
search(pattern,string,flags=0) 使用可选标记搜索字符串中第一次出现的正则表达式模式。如果匹配成功,则返回匹配对象;如果失败,则返回None
findall(pattern,string [, flags] )① 查找字符串中所有(非重复)出现的正则表达式模式,并返回一个匹配列表
finditer(pattern,string [, flags] )② 与 findall()函数相同,但返回的不是一个列表,而是一个迭代器。对于每一次匹配,迭代器都返回一个匹配对象
split(pattern,string,max=0)③ 根据正则表达式的模式分隔符,split 函数将字符串分割为列表,然后返回成功匹配的列表,分隔最多操作max 次(默认分割所有匹配成功的位置)
re 模块函数和正则表达式对象方法
sub(pattern,repl,string,count=0) ③ 使用 repl 替换所有正则表达式的模式在字符串中出现的位置,除非定义count,否则就将替换所有出现的位置(另见subn()函数,该函数返回替换操作的数目)
常用的匹配对象方法(查看文档以获取更多信息)
group(num=0) 返回整个匹配对象,或者编号为num 的特定子组
groups(default=None) 返回一个包含所有匹配子组的元组(如果没有成功匹配,则返回一个空元组)
# -*- coding: utf-8 -*- import re #match() m0 = re.match('aa', 'aa is not AA') print m0.group() #search() m2 = re.search('aa', 'aa is not AA') print m2.group() #findall() m4 = re.findall('aa', 'aa1 aa2 aa3') print m4 #sub() m5 = re.sub('aa','bb','aa1 aa2 aa3') print m5 #subn() m5 = re.subn('aa','bb','aa1 aa2 aa3') print m5