re.match与re.search的区别
re.match 只匹配字符串的开始,如果字符串开始不符合正则表达式,则匹配失败,函数返回 None,而 re.search 匹配整个字符串,直到找到一个匹配。
实例
#!/usr/bin/python3importreline = "Cats are smarter than dogs"matchObj = re.match(r'dogs', line, re.M|re.I)ifmatchObj: print("match --> matchObj.group() : ", matchObj.group())else: print("No match!!")matchObj = re.search(r'dogs', line, re.M|re.I)ifmatchObj: print("search --> matchObj.group() : ", matchObj.group())else: print("No match!!")
以上实例运行结果如下:
No match!!
search --> matchObj.group(): dogs