js正则表达式校验:手机号、身份证、护照、港澳台通行证、银行卡号、车牌号等......

最近经常用正则,总结了一些常用正则表达式:

1、手机号

	let regs=/^(?:(?:\+|00)86)?1[3-9]\d{9}$/;
	if(regs.test(this.mobileNumber)){
		console.log('是手机号')
	}else{
		console.log('不是手机号')
	}
	
	1、中国手机号(严谨), 根据工信部2019年最新公布的手机号段
	/^((\+|00)86)?1((3[\d])|(4[5,6,7,9])|(5[0-3,5-9])|(6[5-7])|(7[0-8])|(8[\d])|(9[1,8,9]))\d{8}$/
	
	2、中国手机号(宽松), 只要是13,14,15,16,17,18,19开头即可
	/^(?:(?:\+|00)86)?1[3-9]\d{9}$/
	
	3、中国手机号(最宽松), 只要是1开头即可
	/^((\+|00)86)?1\d{10}$/

2、身份证号

     let regs = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;  //身份证

3、护照

     let reg=/(^[EeKkGgDdSsPpHh]\d{8}$)|(^(([Ee][a-fA-F])|([DdSsPp][Ee])|([Kk][Jj])|([Mm][Aa])|(1[45]))\d{7}$)/;  //护照(包括香港和澳门)

4、港澳台通行证、居住证

	//港澳居民通行证 H/M + 10位或8位数字 
	// 样本: H1234567890
	let reg3=/^[HMhm]{1}([0-9]{10}|[0-9]{8})$/;   //港澳通行证
      
	// 台湾居民来往大陆通行证
    // 样本: 12345678 或 1234567890B
	//台湾居民通行证 新版8位或18位数字,旧版10位数字 + 英文字母 
	let reg4=/^\\d{8}|^[a-zA-Z0-9]{10}|^\\d{18}$/  //台湾通行证
	
	//香港居住证-810开头、字母数字结尾 共18位
	let reg5= /(^810)([A-Za-z0-9]{15}$)/;
	//澳门居住证-820开头、字母数字结尾 共18位
	let reg6= /(^820)([A-Za-z0-9]{15}$)/;
	//台湾居住证-830开头、字母数字结尾 共18位(至少包含一个数字规则,与820开头规则重叠)
	let reg6= /(^820)([A-Za-z0-9]{15}$)/;

5、银行卡号

	//银行卡号(覆盖10-30位,对公/私账户)
	let reg5=/^[1-9]\d{9,29}$/     //银行卡号
	let reg5=/^([1-9]{1})(\d{15}|\d{18})$/   //更精确一点的

6、军官证

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

7、户口本

      // 户口本
      // 规则: 15位数字, 18位数字, 17位数字 + X
      // 样本: 441421999707223115
      letreg7 = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;

8、用户名、中文姓名

	//用户名正则,4到16位(字母,数字,下划线,减号)
	let reg8= /^[a-zA-Z0-9_-]{4,16}$/;

	let reg8= /^([\u4e00-\u9fa5·]{2,16})$/

9、密码验证

	强:最少6位,包括至少1个大写字母,1个小写字母,1个数字,1个特殊字符
	let reg9=/^.*(?=.{6,})(?=.*\d)(?=.*[A-Z])(?=.*[a-z])(?=.*[!@#$%^&*? ]).*$/
	
	中:字母+数字,字母+特殊字符,数字+特殊字符
	let reg9=/^(?![a-zA-z]+$)(?!\d+$)(?![!@#$%^&*]+$)[a-zA-Z\d!@#$%^&*]+$/
	
	弱:纯数字,纯字母,纯特殊字符
	let reg9=/^(?:\d+|[a-zA-Z]+|[!@#$%^&*]+)$/

10、车牌号(新能源+非新能源)

//车牌号(新能源+非新能源)
let reg10=/^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领][A-HJ-NP-Z][A-HJ-NP-Z0-9]{4,5}[A-HJ-NP-Z0-9挂学警港澳]$/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值