首页 > 技术文章 > 【uniapp 开发】校验工具类 CheckUtil

neo-java 2019-08-08 15:21 原文

校验手机号格式


/**
 * 验证是否为电话号码(座机)
 *
 * @param {}
 *            source
 */
 
function isTelephone(source) {
	var regex = /^(0[0-9]{2,3}\-)?([2-9][0-9]{6,7})+(\-[0-9]{1,4})?$/
	return regex.test(source);  //search(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/) != -1
}
 
/**
 * 验证是否为手机号码(移动手机)
 *
 * @param {}
 *            source
 */
 
function isMobilePhone(source) {
	var regex = /^((\(\d{3}\))|(\d{3}\-))?1\d{10}/;
	return regex.test(source);
}


验证是否为电子邮箱


function isEmail(source) {
	var regex = /^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/;
	if(source.search(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/) != -1){
		return true;
	}else{
		alert("电子邮箱格式不正确");
		return false;
	}
}

验证字符串是否是中文

function isChines(source){
	var regex = /^[\u4E00-\u9FA5]+$/;
	return regex.test(source);
}
 

校验身份证号码格式


function isCardNo(num){
	if(isNaN(num)){
		alert("输入的身份证号不是数字!");
		return false;
	}
	var len = num.length;
	if(len<15 || len>18){
		alert("输入的身份证号码长度不正确定!应为15位或18位");
		return false;
	}
	var re15 = /^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$/;
	var re18 = /^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{4}$/;
	var res = (re15.test(num) || re18.test(num));
	if(res==false){
		alert("输入的身份证号格式不正确!");
		return false;
	}
	return res;
}


校验时间格式


function checkTime(timevale) {
	var regex = /^(([0-1][0-9])|([2][0-4]))(\:)[0-5][0-9](\:)[0-5][0-9]$/g;
	var b = regex.test(timevale);
	return b;
}
 

是否是由字母或数字组成的字符串


function checkLetOrNum(letVale) {
	var regex = /^([a-zA-Z_]{1})([\w]*)$/g;
	var b = regex.test(letVale);
	return b;
}


取字符串的第index的字符


function interceptStr(source, index) {
	var temp = source.charAt(index);
	return parseInt(temp);
}


验证是否是整数或小数



function checkIntAndFloat(source){
	var regex = /^[0-9]+(\.[0-9]+)?$/g;
	return regex.test(source);
}


验证是否是整数或只有一位小数点的小数


function checkFloat(source) {
	// var regex=/^[1-9]d*.d{1}|0.d{1}[1-9]d{1}$/g;
	var regex = /^[0-9]+\d*[\.\d]?\d{0,1}$/g;
	return regex.test(source);
}

验证是否有空格



function checkSpace(source) {
	var regex = /\s/g;
	return regex.test(source);
}


判断字符串是否为空


function isEmpty(source){
	var str = source.replace(/(^\s*)|(\s*$)/g,"");
	if(str=="" || str.toLowerCase()=="null" || str.length<=0){
		return true;
	}else{
		return false;
	}
}


判断包含关系


/*
 *判断包含关系
 *string:原始字符串
 *substr:子字符串
 *isIgnoreCase:忽略大小写
 */
 
 
function jsContains(string,substr,isIgnoreCase)
{
	if(isIgnoreCase)
	{
		string=string.toLowerCase();
		substr=substr.toLowerCase();
	}
	var startChar=substr.substring(0,1);
	var strLen=substr.length;
	for(var j=0;j<string.length-strLen+1;j++)
	{
		if(string.charAt(j)==startChar)//如果匹配起始字符,开始查找
		{
			if(string.substring(j,j+strLen)==substr)//如果从j开始的字符与str匹配,那ok
			{
				return true;
			}
		}
	}
	return false;
}



字符串编码解码


//字符串编码
function strEncode(source){
	return encodeURIComponent(source);
}
//字符串解码
function strDencode(source){
	return decodeURIComponent(source);
}

判断闰年


/**
 * 判断闰年
 * @param date Date日期对象
 * @return boolean true 或false
 */
this.isLeapYear = function(date){
	return (0==date.getYear()%4&&((date.getYear()%100!=0)||(date.getYear()%400==0)));
}

推荐阅读