每日python(4)
re.match与re.search的区别:re.match只匹配字符串的开始,如果字符串开始不符合正则表达式,则匹配失败,函数返回None;而re.search匹配整个字符串,直到找到一个匹配。
pattern = re.complie(regexp)
pattern.match和pattern.search的区别也是上述
1 pattern2 = re.compile(r'(hello).+(world)') 2 3 match = pattern2.match("helloworld hello hello abc dsdhka ad--a=da world") 4 5 if match: 6 print match.group(1, 2) 7 print "*****" 8 print match.group(2) 9 else: 10 print "no result"
这个的结果是:
('hello', 'world') ***** world
但是:
pattern = re.compile(r'(hello).+(world)') match = pattern.match("hello hello hello abc dsdhka ad--a=da world") if match: print match.group(1, 2) print "*****" print match.group(2) else: print "no result"
的结果是: no result
同样:
pattern = re.compile(r'(hello).+(world)') match = pattern.match("dsdhka ad--a=da hello hello hello world") if match: print match.group(1, 2) print "*****" print match.group(2) else: print "no result"
的结果也是: no result
但是research方法对于以上三种输入都是
('hello', 'world') ***** world
的结果