常用的 js 正则校验

1,711 阅读1分钟
只验证中文名,限制一下输入字数
var name = /^[\u4E00-\u9FA5\uf900-\ufa2d]{2,4}$/
name.test('王燕')
验证少数民族名
var name = /^[\u4E00-\u9FA5\uf900-\ufa2d·s]{2,20}$/
name.test('卡尔·菲比了')
验证身份证
/(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/
验证手机号
1. /^1[3456789]\d{9}$/
2. /(^1[3|4|5|7|8|9]\d{9}$)|(^09\d{8}$)/
3. /^\d{3,4}\-\d{7,8}$/ // 固定电话验证
验证银行卡
/^[0-9]{16,19}$/
设备号验证
/^[a-zA-Z]([-_a-zA-Z0-9]{5,19})+$/    //微信号正则校验
/[1-9][0-9]{4,}/      //QQ号正则校验
验证邮箱
1. /^[a-zA-Z0-9_.-]+@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.[a-zA-Z0-9]{2,6}$/
2. /[a-zA-Z0-9]{1,10}@[a-zA-Z0-9]{1,5}\.[a-zA-Z0-9]{1,5}/
外籍证件验证
// 港澳回乡证
// 规则: H/M + 10位或6位数字
// 样本: H1234567890
/^([A-Z]\d{6,11}(\(\w{1}\))?)$/ 

// 台胞证
// 规则: 新版8位或18位数字, 旧版10位数字 + 英文字母
// 样本: 12345678 或 1234567890B
 /^\d{8}|^\d{18}|^[a-zA-Z0-9]{10}$/

// 护照
// 规则: 14/15开头 + 7位数字, G + 8位数字, P + 7位数字, S/D + 7或8位数字,等
// 样本: 141234567, G12345678, P1234567
/^([a-zA-z]|[0-9]){5,17}$/

// 军官证
// 规则: 军/兵/士/文/职/广/(其他中文) + "字第" + 4到8位字母或数字 + "号"
// 样本: 军字第2001988号, 士字第P011816X号
/^[\u4E00-\u9FA5](字第)([0-9a-zA-Z]{4,8})(号?)$/