JavaScript常用正则表达式

JavaScript中使用正则表达式


  1. 使用直接量写法
    以斜杆表示开始和结束:var regex = /^[a-zA-Z]+$/;,创建一个内容为^[a-zA-Z]+$的正则表达式,验证英文字母
	var str = document.getElementById("str").value.trim();//获取指定id的内容,去除空格
	var regex = /^[a-zA-Z]+$/; // 直接量正则表达式
	if(!regex.test(str)){
		alert("请输入正确的英文字母!");
	}

  
  

2.使用内置构造函数生成
通过实例化得到对象:var regex = new RegExp('^[a-zA-Z]+$');,创建一个内容为^[a-zA-Z]+$的正则表达式,验证英文字母,等价于上面直接量方式

	var str = document.getElementById("str").value.trim();//获取指定id的内容,去除空格
	var regex = new RegExp('^[a-zA-Z]+$'); // 构造函数
	if(!regex.test(str)){
		alert("请输入正确的英文字母!");
	}

3. 下面是JS常用正则表达式

JS验证代码:

		// 验证帮助
		var verifyUtils = {
		// 验证输入的内容是否是空
		isNull:function(idStr){
			var str = document.getElementById(idStr).value.trim();
			var regex = /\S/;
			if(!regex.test(str)){
				alert("文本框不能为空,请输入内容!");
			}
		
		},

		// 验证输入的字符是否是英文字母
		isLetter:function(idStr){
			var str = document.getElementById(idStr).value.trim();
			var regex = /^[a-zA-Z]+$/;
			if(!regex.test(str)){
				alert("请输入正确的英文字母!");
			}

		//  验证日期格式是否为YYYY-MM-DD格式
		},isDate:function(idStr){
		
			var str = document.getElementById(idStr).value.trim();
			var regex = /^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/;
			var r = str.match(regex); // 使用match方法获取指定字符串的值

			if(r==null){
				alert("请输入正确的日期格式!");
			}

		//  验证日期格式是否为YYYY-MM-DD hh:mm:ss格式
		},isDateTime:function(idStr){
		
			var str = document.getElementById(idStr).value.trim();
			var regex = /^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/;
			var r = str.match(regex); // 使用match方法获取指定字符串的值

			if(r==null){
				alert("请输入正确的日期格式!");
			}

		// 验证整数
		},isInteger:function(idStr){
			var str = document.getElementById(idStr).value.trim();
			var regex = /^[-+]?\d*$/;
			if(!regex.test(str)){
				alert("请输入正确的整数!");
			}

		// 验证双精度
		},isDouble:function(idStr){
			var str = document.getElementById(idStr).value.trim();
			var regex = /^[-\+]?\d+(\.\d+)?$/;
			if(!regex.test(str)){
				alert("请输入正确的小数!");
			}

		// 验证中文
		},isChinese(idStr){
			var str = document.getElementById(idStr).value.trim();
			var regex = /^[\u0391-\uFFE5]+$/;
			if(!regex.test(str)){
				alert("请输入正确的中文!");
			}

		// 验证邮箱
		},isEmail(idStr){
			var str = document.getElementById(idStr).value.trim();
			var regex = /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;
			if(!regex.test(str)){
				alert("请输入正确的邮箱格式!");
			}

		// 验证手机号
		},isPhone(idStr){
			var str = document.getElementById(idStr).value.trim();
			var regex = /^1[3456789]\d{9}$/;
			if(!regex.test(str)){
				alert("请输入正确的手机号!");
			}

		// 验证身份证
		},isIdCard(idStr){
			var str = document.getElementById(idStr).value.trim();
			var regex = /^\d{6}(18|19|20)?\d{2}(0[1-9]|1[12])(0[1-9]|[12]\d|3[01])\d{3}(\d|X)$/;
			if(!regex.test(str)){
				alert("请输入正确的身份证号码!");
			}
		}
	};

正则验证代码如下:
验证字母:/^[a-zA-Z]+$/
验证长度为3的字符:/^.{3}$/
验证由26个英文字母组成的字符串:/^[A-Za-z]+$/
验证日期YYYY-MM-DD:/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/
验证邮编:/^\d{6}$/
验证日期格式YYYY-MM-DD hh:mm:ss:/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/
验证整数:/^[-+]?\d*$/
验证小数:/^[-\+]?\d+(\.\d+)?$/
验证中文:/^[\u0391-\uFFE5]+$/
验证邮箱:/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/
验证手机号:/^1[3456789]\d{9}$/
验证身份证:/^\d{6}(18|19|20)?\d{2}(0[1-9]|1[12])(0[1-9]|[12]\d|3[01])\d{3}(\d|X)$/

表达式分析:
“/”代表一个正则表达式;
“^”代表字符串的开始位置,“$”代表字符串的结束位置;
“?”代表匹配前面的字符一个或零个,所以这里0?的意思是手机号码可以以0开头或不以0开头。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值