车牌号正则表达式

普通车牌

  1. 第一位汉字(代表省份)
  2. 第二位大写字母(代表城市编码,不含I、Z)
  3. 后面是5位包含阿拉伯数字和字母的组合
var c_reg = /^[京津冀晋蒙辽吉黑沪苏浙皖闽赣鲁豫鄂湘粤桂琼川贵云渝藏陕甘青宁新]{1}[ABCDEFGHJKLMNOPQRSTUVWXY]{1}[0-9A-Z]{5}$/u;

特种车牌(学、挂、领、试、超、练、警)

  1. 第一位汉字(代表省份)
  2. 第二位大写字母(代表城市编码,不含I、Z)
  3. 第三~第六位是包含阿拉伯数字和字母的组合
  4. 第七位是特殊字
var ts_reg = /^[京津冀晋蒙辽吉黑沪苏浙皖闽赣鲁豫鄂湘粤桂琼川贵云渝藏陕甘青宁新]{1}[ABCDEFGHJKLMNPQRSTUVWXY]{1}[0-9A-Z]{4}[学挂领试超练警]{1}$/u;

武警车牌

地方武警车牌需要省份简称号码,总队车牌不需要

var wj_reg = /^WJ[京津冀晋蒙辽吉黑沪苏浙皖闽赣鲁豫鄂湘粤桂琼川贵云渝藏陕甘青宁新]?[0-9A-Z]{5}$/ui;

军牌

第一位是军区代码,其他和普通车牌一致

var j_reg = /^[QVKHBSLJNGCEZ]{1}[ABCDEFGHJKLMNPQRSTUVWXY]{1}[0-9A-Z]{5}$/u;

新能源

新能源车牌位数为8位,小型车车牌与大型车不一致

  1. 第一位汉字(代表省份)
  2. 第二位大写字母(代表城市编码,不含I、Z)
  3. 小型车第三位为D/F
  4. 小型车第四位为非I/O的字母或数字、其余为纯数字
  5. 大型车车牌3~7位纯数字,8号位是D/F
// 小型车
var xs_reg = /^[京津冀晋蒙辽吉黑沪苏浙皖闽赣鲁豫鄂湘粤桂琼川贵云渝藏陕甘青宁新]{1}[ABCDEFGHJKLMNPQRSTUVWXY]{1}[DF]{1}[1-9ABCDEFGHJKLMNPQRSTUVWXYZ]{1}[0-9]{4}$/u;

// 大型车
var xb_reg = /^[京津冀晋蒙辽吉黑沪苏浙皖闽赣鲁豫鄂湘粤桂琼川贵云渝藏陕甘青宁新]{1}[ABCDEFGHJKLMNPQRSTUVWXY]{1}[0-9]{5}[DF]{1}$/u;

港澳车牌

前俩位为粤Z,最后一位是【港/澳】

var g_reg = /^粤Z[0-9A-Z]{4}[港澳]{1}$/u;

民航车牌

第一~二位为民航,三~七位由阿拉伯数字和字母组成

var mh_reg = /^民航[0-9A-Z]{5}$/u;

使馆车牌

第一~三位为数字,四~六位由数字和字母组成,第七位阿拉伯数字和字母组成

var s_reg = /^[1-3]{1}[0-9]{2}[0-9A-Z]{3}使$/u;

领馆车牌

var l_reg = /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼]{1}[1-3]{1}[0-9]{2}[0-9A-Z]{2}领$/u,
handleLicenseNo(){
			let c_reg = /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}[A-HJ-NP-Z0-9]{4}[A-HJ-NP-Z0-9港澳]{1}$/,
			    x_reg = /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}[A-HJ-NP-Z0-9]{6}$/, // (([0-9]{5}[DF]$)|([DF][A-HJ-NP-Z0-9][0-9]{4}$))
				l_reg = /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼]{1}[1-3]{1}[0-9]{2}[0-9A-Z]{2}领$/u,
				sg_reg = /^[1-3]{1}[0-9]{2}[0-9A-Z]{3}使$/u
			if(this.params.licenseNo == '') return
			if(this.params.licenseNo.length == 7) {
				if(!c_reg.test( this.params.licenseNo ) && !sg_reg.test( this.params.licenseNo ) && !l_reg.test(this.params.licenseNo)){
					this.params.licenseNo = ''
					Toast(this.formData.licenseNo.message);
					return
				}
			}else if(this.params.licenseNo.length == 8) {
				if(!x_reg.test(this.params.licenseNo)){
					this.params.licenseNo = ''
					Toast(this.formData.licenseNo.message);
					return
				}
			} else {
				this.params.licenseNo = ''
				Toast(this.formData.licenseNo.message);
				return
			}
			this.$emit('change',this.params);
		},

总结

感谢大家观看,如有错误请大家不吝指正!

猜你喜欢

转载自blog.csdn.net/codingLeader/article/details/122878554
今日推荐