常用的正则表达式

正则表达式在某些时候能少些很多代码,这里总结了一些给大家分享一下。

import re

  # 6到12位(字母,数字,下划线,减号,%)
print(bool(re.match(r'^[a-zA-Z0-9_%^]{6,12}$', "a2222%_^")))

#正整数
print(bool(re.match(r'^\d+$',"42.22")))
#负整数
print(bool(re.match(r'^-\d+$',"42")))
#整数
print(bool(re.match(r'^-?\d+$',"-42")))
#数字
print(bool(re.match(r'^\d*\.?\d+$',"42.3")))
print(bool(re.match(r'-\d*\.?\d+$',"-42.2")))
print(bool(re.match(r'-?\d*\.?\d+$',"42.32")))

#邮箱
print(bool(re.match(r'^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$', "540474862@qq.com")))

#手机号
print(bool( re.match(r'^((13[0-9])|(14[5|7])|(15([0-3]|[5-9]))|(18[0,5-9]))\d{8}$',"186000000001")))

#身份证号
print(bool(re.match(r'^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$',"11010519790605371X")))

#车牌号
print(bool(re.match(r'^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}[A-Z0-9]{4}[A-Z0-9挂学警港澳]{1}$',"冀A3B_06")))

#是否包含中文
print(bool(re.match(r'[\u4E00-\u9FA5]+',"Totem")))


####