JavaScript 正则表达式验证函数代码

时间:2021-05-26

利用正则表达式判断是否是0-9的阿拉伯数字
复制代码 代码如下:
function regIsDigit(fData)
{
var reg = new RegExp("^[0-9]$");
return (reg.test(fData));
}

利用这则表达式获取字符串的长度
复制代码 代码如下:
function regDataLength(fData)
{
var valLength = fData.length;
var reg = new RegExp("^[\u0391-\uFFE5]$");
var result = 0;
for(i=0; i< valLength; i++)
{
if(reg.test(fData.charAt(i)))
{
result += 2;
}
else
{
result ++;
}
}
return result;
}

应用扩展判断是否是数值
复制代码 代码如下:
function regIsNumber(fData)
{
var reg = new RegExp("^[-]?[0-9]+[\.]?[0-9]+$");
return reg.test(fData)
}

验证Email是否正确
复制代码 代码如下:
function regIsEmail(fData)
{
var reg = new RegExp("^[0-9a-zA-Z]+@[0-9a-zA-Z]+[\.]{1}[0-9a-zA-Z]+[\.]?[0-9a-zA-Z]+$");
return reg.test(fData);
}

判断手机号是否正确
复制代码 代码如下:
function regIsPhone(fData)
{
var reg = /^(\+86)?(1[0-9]{10})$/;
return reg.test(fData);
}


// 判断输入是否是一个由 0-9 / A-Z / a-z 组成的字符串
复制代码 代码如下:
function isalphanumber(str)
{
var result=str.match(/^[a-zA-Z0-9]+$/);
if(result==null) return false;
return true;
}


// 判断输入是否是一个数字--(数字包含小数)--
复制代码 代码如下:
function isnumber(str)
{
return !isNaN(str);
}


// 判断输入是否是一个整数
复制代码 代码如下:
function isint(str)
{
var result=str.match(/^(-|\+)?\d+$/);
if(result==null) return false;
return true;
}


// 判断输入是否是有效的长日期格式 - "YYYY-MM-DD HH:MM:SS" || "YYYY/MM/DD HH:MM:SS"
复制代码 代码如下:
function isdatetime(str)
{
var result=str.match(/^(\d{4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/);
if(result==null) return false;
var d= new Date(result[1], result[3]-1, result[4], result[5], result[6], result[7]);
return (d.getFullYear()==result[1]&&(d.getMonth()+1)==result[3]&&d.getDate()==result[4]&&d.getHours()==result[5]&&d.getMinutes()==result[6]&&d.getSeconds()==result[7]);
}


// 检查是否为 YYYY-MM-DD || YYYY/MM/DD 的日期格式
复制代码 代码如下:
function isdate(str){
var result=str.match(/^(\d{4})(-|\/)(\d{1,2})\2(\d{1,2})$/);
if(result==null) return false;
var d=new Date(result[1], result[3]-1, result[4]);
return (d.getFullYear()==result[1] && d.getMonth()+1==result[3] && d.getDate()==result[4]);
}


// 判断输入是否是有效的电子邮件
复制代码 代码如下:
function isemail(str)
{
var result=str.match(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/);
if(result==null) return false;
return true;
}


// 去除字符串的首尾的空格
复制代码 代码如下:
function trim(str){
return str.replace(/(^\s*)|(\s*$)/g, "");
}


// 返回字符串的实际长度, 一个汉字算2个长度
复制代码 代码如下:
function strlen(str){
return str.replace(/[^\x00-\xff]/g, "**").length;
}


//匹配中国邮政编码(6位)
复制代码 代码如下:
function ispostcode(str)
{
var result=str.match(/[1-9]\d{5}(?!\d)/);
if(result==null) return false;
return true;
}

//匹配国内电话号码(0511-4405222 或 021-87888822)
复制代码 代码如下:
function istell(str)
{
var result=str.match(/\d{3}-\d{8}|\d{4}-\d{7}/);
if(result==null) return false;
return true;
}

//校验是否为(0-10000)的整数
复制代码 代码如下:
function isint1(str)
{
var result=str.match(/^[0-9]$|^([1-9])([0-9]){0,3}$|^10000$/);
if(result==null) return false;
return true;
}


//匹配腾讯QQ号
复制代码 代码如下:
function isqq(str)
{
var result=str.match(/[1-9][0-9]{4,}/);
if(result==null) return false;
return true;
}


//匹配身份证(15位或18位)
复制代码 代码如下:
function isidcard(str)
{
var result=str.match(/\d{15}|\d{18}/);
if(result==null) return false;
return true;
}

//校验文本是否为空
复制代码 代码如下:
function checknull(field,sval)
{
if (field.value =="")
{
alert("请填写" + sval + "!");
field.focus();
return false;
}
return true;
}


//屏蔽输入字符
复制代码 代码如下:
function checkChar()
{
var keycode = event.keyCode;
if(!(keycode>=48&&keycode<=57))
{
return false;
}
}

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章