很多在自学python的小伙伴想知道在python开发中,match和search的区别是什么?那么小编就通过这篇文章来告诉大家具体的区别是什么。
他们两个的区别如下:match()函数只检测 RE 是不是在string的开始位置匹配,search()会扫描整个string查找匹配;也就是说 match()只有在0位置匹配成功的话才有返回,如果不是开始位置匹配成功的话,match()就返回none。
那么match是什么?
match从字符串的起始位置开始匹配,如果匹配成功,就返回第一个对象。
import re m = re.match(‘bat|bae’,’eabat’) if m is not None; print(m.group()) else; print(‘没有找到’) >>>没有找到
那么search又是什么?
search工作方式与match类似,只是search从字符串的任意位置开始匹配,并返回第一个匹配的对象。
import re n = re.search(‘bat|bae’,’eabat’) if m is not None; print(n.group()) else; print(‘没找到’) >>>bat
最后Python开发中match和search的区别:
match()函数只检测RE是不是在string的开始位置匹配,search()会扫描整个string查找匹配, 也就是说match()只有在0位置匹配成功的话才有返回,如果不是开始位置匹配成功的话,match()就返回none。