1.区别
re.findall()的概念就是从字符串中匹配所有要查找的字符串出来,并输出为格式列表
re.match()则是查找字符串中起始位置是否为要查看的字符串,如果匹配成功则返回一个match object的对象,其中包含了匹配到的字符串的其实位置和字符串本身。如果在起始位置没有匹配到对应的字符串则返回None
re.search()则是查找整个字符串,并返回第一个匹配到的对象。它和re.match的区别在于即便匹配到的对象不在起始位置,也会返回。如果整个字符串都没有匹配到结果则返回None
2.代码示例
如下代码:
给出了一个字符串,其中hello子串后面的标点有所区别,用于不同的匹配
import re
str = 'hello wolrd!hello, hello! everything'
match1 = re.findall('hello',