python – re.match与re.search

可能重复:
Python的re.search和re.match有什么区别?

我最近一直在用Python来理解正则expression式。

我一直在看api; 我似乎无法理解之间的区别:

re.match与re.search

什么时候最好使用这些? 利弊? 利弊?

谢谢,麻烦您了。

re.match()只匹配string的开头。 一个共同的问题。 请参阅文档 。

search()match()

re.match()仅在string的开始处检查匹配,而re.search()检查string中任何位置的匹配。

 >>> re.match("c", "abcdef") # No match >>> re.search("c", "abcdef") # Match <_sre.SRE_Match object at ...> 

我刚刚了解到,您也可以像这样search子string:

 if 'c' in 'abcdef' # True