标签:python
正则表达式匹配
\d 匹配一个数字
\w 匹配一个字母
\s 匹配一个空格或tab空白符
[] 匹配一个范围,例如[0-9a-zA-Z\_]
可以匹配一个数字、字母或者下划线
. 表示任意一个字符
? 表示任意一个或零个字符
个数
+ 表示其前面的字符串至少出现了一次
{n} 表示其前面的字符串出现了n次
{n,m} 可以表示其前面的字符串出现了n-m次
转义
\ 表示转义
r'' 引号中的特殊字符会被转义(建议使用这种,不用考虑转义问题)
re模块
match()方法 判断是否匹配,如果匹配成功,返回一个Match对象,否则返回None。常见语法如下:
str = '用户输入的字符串' if re.match(r'正则表达式', str): print('ok') else: print('failed')
例如:
#匹配ip地址 import re if re.match(r'\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}','127.0.0.1'): print('ok') else: print('false')
分组
() 小括号中匹配的分为一组,常用功能:简洁代码、字串提取,例如:
#匹配ip地址,相同的部分写成了一组 import re if re.match(r'(\d{1,3}.){3}\d{1,3}','127.0.0.1'): print('ok') else: print('false')
#识别时间,提取小时、分钟、秒 import re t = '23:05:30' m = re.match(r'^(0[0-9]|1[0-9]|2[0-3]|[0-9]):(0[0-9]|1[0-9]|2[0-9]|3[0-9]|4[0-9]|5[0-9]|[0-9]):(0[0-9]|1[0-9]|2[0-9]|3[0-9]|4[0-9]|5[0-9]|[0-9])$', t) print (m.groups())
标签:python
原文地址:http://blog.51cto.com/fengjicheng/2094808