工作中,经常会遇到检查手机号码格式、邮箱格式等是否合法。
像下面这段代码:
import re
pattern = "^1(3|4|5|7|8)[0-9]\d{8}$"
phone_num = "13288893472"
ret = re.match(pattern,phone_num)
if ret:
print "good"
print ret
else:
print "bad"
match 匹配成功返回匹配对象,否则返回None.
output:
good
<_sre.SRE_Match object at 0x7fde88fcf558>
email地址正则:
\w[-\w.+]*@([A-Za-z0-9][-A-Za-z0-9]+.)+[A-Za-z]{2,14}
IP地址正则:
(25[0-5]|2[0-4]\d|[0-1]\d{2}|[1-9]?\d).(25[0-5]|2[0-4]\d|[0-1]\d{2}|[1-9]?\d).(25[0-5]|2[0-4]\d|[0-1]\d{2}|[1-9]?\d).(25[0-5]|2[0-4]\d|[0-1]\d{2}|[1-9]?\d)
这个IP地址的正则比较全面,限制每个字节是0~255.
参考:
http://www.jianshu.com/p/e8477fdccbe9
http://tool.chinaz.com/regex