道者编程


JS常用正则表达式匹配

//获取两个字符串中间的字符
var str = "abc123789";
var substr = str.match(/abc(\S*)789/)[1]; //获取abc开头到789的字符
alert(substr); //此方法在字符串中没有空格的情况下可以获取,如果有空格获取不到

//可以换一种方式
var str = "abc12 3789";
splitStr(str,'abc','789');
function splitStr(str,start='',end='')
{
	var strList = str.split(start);
	var endList = strList[1].split(end);
	return endList[0];
}

//匹配数字大于0,不能为负
function number(str)
{
	var pattern = /^[1-9]+?[0-9]*$/;
	if(!pattern.test(str)){
		return false;
	}else{ 
		return true;
	}
}

//匹配带数字,支持小数点
function floatNum(str)
{
	var pattern = /^[0-9]+.?[0-9]*$/;
	if(!pattern.test(str)){
		return false;
	}else{ 
		return true;
	}
}
//匹配float 小数点最多输入两位
function floatNum()
{ var str = $("#add").val(); 
	var pattern = /^[0-9]+.?[0-9]{0,2}$/;
	if(!pattern.test(str)){ 
		return false;
	}else{ 
		if(str.replace(/\-/g,"")==0){//去除0.00
			return false
		}else{
			return true;
		}
	}
}

//匹配电话号码,格式:0755-4567654
function tel(str)
{ 
	var pattern=str.match(/\d{3}-\d{8}|\d{4}-\d{7}/);
	if(pattern==null){
		return false;
	}else{
		return true;
	}
}

//匹配手机号码
function iphone(str)
{
	if(!(/^1[3|4|5|7|8]\d{9}$/.test(str))){ 
		return false;
	}else{
		return true;
	}
}

//匹配邮箱
function email(str)
{
	var pattern=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;	
	if(!pattern.test(email)){
		return false;
	}else{
		return true;
	}
}
 
        


最新评论:
我要评论:

看不清楚


链接