JS经常使用正則表達式【分享】

JS经常使用正則表達式【分享】

大家好,又见面了,我是全栈君。

工作中JS经常使用表达式:
1)2010-09-10类型日期校验
2)推断正整数。字符串长度
3)校验长度,和是否空
4)推断字符串是否为空
5)比較字符大小
6)推断字符串长度
7)推断格式是否为Email格式
8)推断是否为两位小数
9)推断是否包括中文
10)推断是否包括字符串
11)推断是否为数字
12)推断是否为正整数
13)推断英文字符跟数字组合
14)IP格式推断

Ext.require(['*']);

	/***
	 * 日期校验
	 * @param {} num
	 * @return {}
	 */
	function testDate(newdate){
		 alert(newdate);
	    var startime=Ext.util.Format.date(newdate,'Y-m-d H:m:s');
	    var startDateTemp = startime.split(" ");
	    reg=/^([1-2]\d{3})[\/|\-](0?

[1-9]|10|11|12)[\/|\-]([1-2]?

[0-9]|0[1-9]|30|31)$/; if(!startDateTemp[0].match(reg)){ Ext.Msg.alert("系统提示","请选择正确的日期格式如:2010-09-10!!"); return false; } return true; } //推断正整数。字符串长度 function checkNumAndLen(abc,lenNum) { //推断空 if(!checkNull(abc)) { //推断正整数 var reg = /^[0-9]+[0-9]*]*$/; //推断字符串是否为数字 /^[0-9]+.?

[0-9]*$/ if (!abc.match(reg)) { return false; } return checkLenth(abc,lenNum); } return false; } //推断正整数,字符串长度 function checkNumAndNumLen(abc,lenNum) { //推断空 if(!checkNull(abc)) { //推断正整数 var pattern = /^[0-9]+[0-9]*]*$/; //推断字符串是否为数字 /^[0-9]+.?[0-9]*$/ if (pattern.test(abc)){ if(abc.length <= lenNum){ return false; }else{ return true; } }else{ return true; } }else{ return true; } } //校验长度。和是否空 //校验成功返回true 失败false function checkNullAndLength(abc,num) { if(!checkNull(abc)) { return checkLenth(abc,num); } return false; } //推断是否为空 function checkNull(abc) { if(abc == null || abc.replace(/^\s\s*/, '' ).replace(/\s\s*$/, '' ).length == 0) { return true; } return false; } /** * 比較大小 * @param from * @param to * @returns {Number} */ function compare(from,to){ if(from>to){ return 1; }else if(from==to){ return 0; }else if(from<to){ return -1; } } //推断字符串长度 function checkLenth(abc,lenNum) { if(lenNum == 0 || abc == null) { return true; } var l = 0; var a = abc.split(""); for (var i=0;i<a.length;i++) { if (a[i].charCodeAt(0)<299) { l++; } else { l+=2; } } if(l > lenNum) { return false; } return true; } //电话号码 function checkPhone(strNumber) { var pattern = /^\d{0,20}$/; if(strNumber==null||strNumber==""){ return true; }else{ if(pattern.test(strNumber)){ return true; } } return false; } //Email function checkEmail(strEmail) { var pattern = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-])+/; if(pattern.test(strEmail)) return true; return false; } //2位小数 function isDecimal(value){ if(value == null) return false; var v = value; var pattern = /^[1-9]+\.\d{1,2}$/; flag = pattern.test(v); if(!flag){ //obj.value = obj.value + ".00"; //obj.select(); //obj.focus(); return false; }else{ return true; } } //是否包括中文 //true: 包括中文 false:不包括中文 function checkChinese(str){ if (escape(str).indexOf("%u") != -1) { return true; } else { return false; } } //是否包括特殊字符 function checkQuote(str){ var items = new Array("~", "`", "!", "@", "#", "$", "%", "^", "&", "*", "{", "}", "[", "]", "(", ")","'"); items.push(":", ";", "’", "|", "\\", "<", ">", "?", "/", "<<", ">>", "||", "//"); items.push("admin", "administrators", "administrator"); items.push("select", "delete", "update", "insert", "create", "drop", "alter", "trancate"); str = str.toLowerCase(); for (var i = 0; i < items.length; i++) { if (str.indexOf(items[i]) >= 0) { return true; } } return false; } //是否是数字 function checkNum(str){ var pattern = /^[0-9]*$/; if(pattern.test(str)){ return false; }else{ return true; } } //是否是正整数 function checkPositiveNum(str){ //推断空 if(!checkNull(str)) { //推断正整数 var reg = /^[1-9]+[0-9]*]*$/; //推断字符串是否为数字 /^[0-9]+.?[0-9]*$/ if (str.match(reg)){ return false; }else{ return true; } } return true; } /** * 推断文件格式是否正确 * @param {Object} str * @return {TypeName} */ function checkFile(str){ //验证图片文件的正则 var img_reg = /\.([vV][mM]){1}$/; if(str.match(img_reg)){ return false; }else{ return true; } } /** * 推断文件格式是否正确 * @param {Object} str * @return {TypeName} */ function checkFileExcel(str){ //验证图片文件的正则 var img_reg = /\.([xX][lL][sS]){1}$/; if(str.match(img_reg)){ return false; }else{ return true; } } //仅仅能是英文字符跟数字组合 function checkatandnumber(str,strlength){ var qtype=/^[A-Za-z0-9]+$/; if(str.match(qtype)){ if(!checkLenth(str,strlength)){ return false; }else{ return true; } }else{ return false; } } /** * IP格式推断 * @param {Object} str * @param {Object} strlength * @return {TypeName} */ function checkIp(str){ var pattern = /^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/; if(pattern.test(str)){ return false; }else{ return true; } }


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/116568.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号