python:re.match和re.search的区别

re.match函数只匹配字符串的开始字符,如果开始的字符不符合正则表达式,匹配就会失败,返回None。
re.search方法匹配整个字符串,直到找到一个匹配的对象,匹配结束没找到匹配值才返回None。

def test_B():
# ! /usr/bin/evn python
# -*- coding:utf-8 -*-

import re

line = 'Cats are smarter than dogs dogs'
matchObj = re.match(r'dogs', line)
if matchObj:
print('use match,the match string is:', matchObj.group())
else:
print('No match string!!')

matchObj = re.search(r'dogs', line)
if matchObj:
print('use search,the match string is:', matchObj.group())
else:
print('No search match string!!')

执行结果如下:

No match string!!
use search,the match string is: dogs
上一篇:Java实现:二叉搜索树(Binary Search Tree),突围金九银十面试季


下一篇:关于python的二分法查找