re.match与re.search的区别
re.match只匹配字符串的开始,如果字符串开始不符合正则表达式,则匹配失败,函数返回None;而re.search匹配整个字符串,直到找到一个匹配。
实例
#!/usr/bin/pythonimportreline = "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 --> searchObj.group() : ", matchObj.group()else: print"No match!!"
以上实例运行结果如下:
No match!!
search --> searchObj.group(): dogs