一些JavaScript的验证函数

时间:2023-02-13 08:18:04

在Web开发里面经常要用到一些常用的验证,比如姓名,E-MAIL,电话号码等.
把他们写成了函数以后就可以直接使用了,以类似的原理可以通过正则表达式写出更多更符合的JS函数,各位自己发挥了!
--------------------------------------------------
1.//校验是否全由数字组成
function isDigit(s)
{
var patrn=/^[0-9]{1,20}$/;
if (!patrn.exec(s)) return false
return true
}
2.//校验登录名:只能输入5-20个以字母开头、可带数字、“_”、“.”的字串
function isRegisterUserName(s)
{
var patrn=/^[a-zA-Z]{1}([a-zA-Z0-9]|[._]){4,19}$/;
if (!patrn.exec(s)) return false
return true
}

3.//校验密码:只能输入6-20个字母、数字、下划线
function isPasswd(s)
{
var patrn=/^(\w){6,20}$/;
if (!patrn.exec(s)) return false
return true
}

4.//校验手机号码:必须以数字开头,除数字外,可含有“-”
function isMobil(s)
{
var patrn=/^([0-9]{11,13})?$/;
if (!patrn.exec(s)) return false
return true
}

5.//Email验证
function isEmail(src) {
var isEmail1 = /^\w+([\.\-]\w+)*\@\w+([\.\-]\w+)*\.\w+$/;
var isEmail2 = /^.*@[^_]*$/;
return (isEmail1.test(src) && isEmail2.test(src));
}

6.中文验证
function onlychinese()
{
if ((window.event.keyCode >=32) && (window.event.keyCode <= 126))
{
window.event.keyCode = 0 ;
}
}
用法试例:<input name="UserName" type="text" onKeyPress="onlychinese();">
//中文验证
1、判断字符串是否为连续的中文字符(不包含英文及其他任何符号和数字):
Regex.IsMatch("中文","^[\u4e00-\u9fa5]+$");
2、判断字符串是否为中文字符串(仅不包含英文但可以包含其他符号及数字):
!Regex.IsMatch("中文",@"[a-zA-Z]");