写了这么多年 python 了,今天遇到一个不太明白的问题。
问题就如标题(为了简短期间,标题里面稍作改动)。
这样死活匹配不出来:
>>> r = re.match(': (?P<timeout>\d+) ms', 'Screen off timeout: 10000 ms')
>>> r
>>> print(r)
None
改成这样就好了:
>>> r = re.match('Screen off timeout: (?P<timeout>\d+) ms', 'Screen off timeout: 10000 ms')
>>> r
<_sre.SRE_Match object; span=(0, 28), match='Screen off timeout: 10000 ms'>
求大虾指点其原理?在线跪等
1
hugo775128583 2017-07-15 14:17:24 +08:00 via Android 1
match 是从头开始匹配。
请用 search |
2
aheadlead OP @hugo775128583 学习了 谢谢
|
3
aheadlead OP @hugo775128583
没想到这么多年我都是瞎用的,没好好看文档。 [面壁思过] 请教大虾,能否这样理解: re.match(pattern, string) 等于 re.search('^' + patttern, string) |