那年那日那朵花

".......(o´ω`o)......"

python中re正则匹配注意点

2016-08-09 13:44 python

python中的正则匹配模块re中的re.search和re.match是有区别的。

  • re.search 会扫描整个字符串,直到匹配到一个符合条件的结果。
  • re.match 只会从字符串的开始位置扫描,如果起始位置不符合正则表达式就返回空。

所以当用到'$'匹配行尾的时候要注意了,如果用re.match的时候不指定行首的话是匹配不到的。

以下代码为例

#!/usr/bin/env python
#_*_ coding:utf-8 _*_
import re
s='sadsadf'
if re.search('adf$',s):
    print 're.search 匹配到了'

if re.match('adf$',s):
    print 're.match 匹配到了'

运行结果如下:

[root@localhost ~]# python test.py 
re.search 匹配到了

心情

Cloudhu 个人随笔|built by django|

沪ICP备16019452号-1