JS常用正则表达式大全

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开头。
那里写的不对可以指出,如果你有更好的方式,可以一起讨论,希望可以帮助到大家,也可以加qq群:1007307899

你可能感兴趣的:(js,正则)