一些常用的正则表达式

身份证: /^d{6}(18|19|20)?d{2}(0[1-9]|1[012])(0[1-9]|[12]d|3[01])d{3}(d|[xX])$/ 
// d{6}     #匹配前六位为数字
// (18|19|20)?     #匹配前两位数可以是18,19或者20,问号?表示重复0次或1次,也就是说是可选的,可以没有,如果没有也能匹配成功。
// d{2}          #匹配任意两位数字
// (0[1-9]|1[12])     #匹配01-09或者11-12
// (0[1-9]|[12]d|3[01]) #匹配01-09或者10-29或者30-31
//
d{3}               #匹配任意三位数字
// (d|[xX]              #匹配任意数字或 大小X

// 貌似没什么问题对吧 但是本人亲测匹配自己身份证不可以

所以自己写了一个 /(^d{15}$)|(^d{18}$)|(^d{17}(d|X|x)$)/
 


手机号:/^(13[0-9]|14[579]|15[0-3,5-9]|16[6]|17[0135678]|18[0-9]|19[89])d{8}$/ 

邮箱:/^w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*$/ 日期:/^([1][7-9][0-9][0-9]|[2][0][0-9][0-9])(-)([0][1-9]|[1][0-2])(-)([0-2][1-9]|[3][0-1])$/
//格式为:yyyy-MM-dd 中文:/[u4e00-u9fa5]/ 年龄:/^[1-9]d?$|^1[0-4]d$|^0$|^150$/ //[0,150]岁,不允许小数,不允许0x,0xx形式,可以0:
原文地址:https://www.cnblogs.com/zhangxiaoxia/p/9377120.html