问题:请说明以下re模块中的match和search有什么区别?
re.match()与re.search()的区别
re.match()只匹配字符串的开始,如果字符串开始不符合正则表达式,则匹配失败,结果返回None,而re.search()匹配整个字符串,直到找到一个匹配
re.search()
re.search()扫描整个字符串并返回第一个成功的匹配结果,如果匹配成功,re.search()将返回一个匹配的对象,否则返回None
语法格式
re.search(pattern, string, flags=0)
参数说明
pattern:匹配的正则表达式
string:要匹配的字符串
flags:标志位(可选参数),用于控制正则表达式的匹配方式,如:是否区分大小写,多行匹配等等,其具体参数为:
1.re.I 使匹配对大小写不敏感
2.re.L 表示特殊字符集 \w, \W, \b, \B, \s, \S 依赖