一、re 模块使 Python 语言拥有全部的正则表达式功能。
我们今天主要讲的是:(也可以直接去看区别总结)
1、re.match函数
在菜鸟教程有解释到 re.match函数是 尝试从字符串的起始位置匹配一个模式,如果不是起始位置匹配成功的话,match()就返回none。
语法为:
re.match(pattern, string, flags=0)
理解:
match函数会从字符串的起始位置开始匹配pattern,如果在起始位置匹配不成功的话,match()就会返回none,只匹配一个。
2、re.search方法
在菜鸟教程有解释到 re.search 扫描整个字符串并返回第一个成功的匹配。
语法为:
re.search(pattern, string, flags=0)
理解:
search会对整个字符串进行扫描匹配,并且就算字符串中有多个匹配成功的它也只会返回第一个第一个匹配成功的,如果没有匹配成功的返回none,只匹配一个
3、re.findall函数
在字符串中找到正则表达式所匹配的所有子串,并返回一个列表,如果没有找到匹配的,则返回空列表。
语法为:
findall(pattern, string, flags=0)
理解:
findall会对字符串进行扫描匹配,并且会以列表的形式返回所有匹配成功的的子串,如果没有找到匹配的,则返回空列表。
二、总结
查找匹配只返回一个匹配子串的是用match和search,其中返回第一次匹配成功子串的用search,开头就匹配不成功就可以直接返回的用match,返回所有匹配子串的用findall