工作中,经常会遇到检查手机号码格式、邮箱格式等是否合法。
像下面这段代码:
- 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