含义:检查一个字符串是否与某种模式匹配,由re模块提供。
re.match()
re.match(匹配的正则表达式,要匹配的字符串,标志位)
//尝试从字符串的起始位置匹配一个模式,如果不是起始位置匹配成功的话,match()就返回none。
re.search()
re.search(匹配的正则表达式,要匹配的字符串,标志位)
//扫描整个字符串并返回第一个成功的匹配。
re.match只匹配字符串的开始,如果字符串开始不符合正则表达式,则匹配失败,函数返回None;而re.search匹配整个字符串,直到找到一个匹配。
re.sub()
re.sub(pattern,repl,string,count=0,flags=0)
re.sub(正则中的模式字符串,替换的字符串,原始字符串,模式匹配后替换的最大次数,标志位)
//count=0时表示替换所有的匹配
//替换字符串中的匹配项。
re.compile
re.compile(pattern[,匹配模式])
//编译正则表达式,生成一个正则表达式( Pattern )对象,供 match() 和 search() 这两个函数使用。
findall
findall(要匹配的字符串[,起始位置[,结束位置]])
//在字符串中找到正则表达式所匹配的所有子串,并返回一个列表,如果没有找到匹配的,则返回空列表。
re.finditer
re.finditer(匹配的正则表达式,要匹配的字符串,标志位)
//在字符串中找到正则表达式所匹配的所有子串,并把它们作为一个迭代器返回。
re.split
re.split(匹配的正则表达式,要匹配的字符串[,分隔次数[,标志位]])
//按照能够匹配的子串将字符串分割后返回列表。
group()和groups()
1、group():返回re整体匹配的字符串,可以一次输入多个组号,在这种情况下它将返回一个包含那些组所对应值的元组;
2、group(0):返回re整体匹配的字符串;
3、group(n,m):返回组号为n,m所匹配的字符串,如果组号不存在,则返回indexError异常;
4、groups():groups() 方法返回一个包含正则表达式中所有小组字符串的元组,从 1 到所含的小组号,通常groups()不需要参数,返回一个元组,元组中的元就是正则表达式中定义的组。
start、end、span
group.start():返回匹配开始的位置;
group.end():返回匹配结束的位置;
group.span():返回一个元组包含匹配 (开始,结束) 的位置。
标志位(flags):用于控制正则表达式的匹配方式,如:是否区分大小写,多行匹配等等。
菜鸟教程
常见正则模式
菜鸟教程
正则实例
菜鸟教程