import re # 导入re模块
在re模块里必须学会的三个模块:
1、findall:返回所满足匹配条件的结果,并将结果放在列表里。
写法:findall('正则','待匹配内容')
# findall 返回所满足匹配条件的结果,放在列表里 import re ret = re.findall('a','hallo,How are you?') print(ret)
2、search :从前往后,找到一个就返回,返回的变量需要调用group()才能拿到结果,如果没有找到,那么久返回None,调用group()会报错
写法 search('正则','待匹配内容')
print(变量名.group())
# search:从前往后,找到一个就返回,返回的变量需要调用group()才能拿到结果, # 如果没有找到,那么久返回None,调用group()会报错 import re ret = re.search('a','hallo,How are you?') print(ret) print(ret.group()) # 报错演示 import re ret = re.search('c','hallo,How are you?') print(ret) print(ret.group())
3、match:从头开始匹配,如果正则规则从头开始可以匹配上,就返回一个变量,匹配内容需要用group()才能拿到结果,如果没有找到,那么就返回None,调用group()会报错
写法 match('正则','待匹配内容')
if 变量==True:
print(变量名.group())
# match:从头开始匹配,如果正则规则从头开始可以匹配上,就返回一个变量,匹配内容需要用group()才能拿到结果 # 如果没有找到,那么就返回None,调用group()会报错 import re ret = re.match('a','a hallo,How are you?') print(ret) if ret: print(ret.group()) # 错误演示 import re ret = re.match('a','hallo,How are you?') if ret: print(ret.group())
常用模块
split :分割
sub: 替换
compile : 编译 当你一个正则要反复使用,而且正则规则很长,就会使用compile
finditer :返回一个存放匹配结果的迭代器