js表单验证正则大全

常用正则表达式

/^\\d+$/          //非负整数(正整数 + 0) 
/^[0-9]*[1-9][0-9]*$/    //正整数 
/^((-\\d+)|(0+))$/       //非正整数(负整数 + 0) 
/^-[0-9]*[1-9][0-9]*$/    //负整数 
/^-?\\d+$/           //整数 
/^\\d+(/          //非负浮点数(正浮点数 + 0) 
/^(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*))$/    //正浮点数
/^((-\\d+(/           //非正浮点数(负浮点数 + 0) 
/^(-(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*)))$/    //负浮点数 
/^(-?\\d+)(/         //浮点数

/^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((\.[a-zA-Z0-9_-]{2,3}){1,2})$/        //Email验证

长度限制

<script>
function test() {
if(document.a.b.value.length>50){
    alert("不能超过50个字符!");
    document.a.b.focus();
    return false;
}
}
</script>
<form name=a onsubmit="return test()">
	<textarea name="b" cols="40" wrap="VIRTUAL" rows="6"></textarea>
	<input type="submit" name="Submit" value="check">
</form> 

只能是汉字

<input οnkeyup="value="/oblog/value.replace(/[^\u4E00-\u9FA5]/g,'')">

只能是英文

<script language=javascript>
function onlyEng(){
	if(!(event.keyCode>=65&&event.keyCode<=90))
	event.returnvalue=false;
}
</script>

<input onkeydown="onlyEng();">

只能是数字

<script language=javascript>
function onlyNum(){
	if(!((event.keyCode>=48&&event.keyCode<=57)||(event.keyCode>=96&&event.keyCode<=105)))
	//考虑小键盘上的数字键
	event.returnvalue=false;
}
</script>

<input onkeydown="onlyNum();">

只能是英文字符和数字

<input οnkeyup="value="/oblog/value.replace(/[\W]/g,"'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))">

验证邮箱格式

<script>
function isEmail(strEmail) {
	if (strEmail.search(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/) != -1)
	return true;
	else
	alert("oh");
}
</script>
<input type=text onblur=isEmail(this.value)>

屏蔽关键字(这里屏蔽***和****)

<script language="javascript1.2">
function test() {
	if((a.b.value.indexOf ("***") == 0)||(a.b.value.indexOf ("****") == 0)){
		alert(":)");
		a.b.focus();
		return false;
	}
}
</script>
<form name=a onsubmit="return test()">
	<input type=text name=b>
	<input type="submit" name="Submit" value="check">
</form>

两次输入密码是否相同

<form method="post" action="">
	<input type="password" id="input1">
	<input type="password" id="input2">
	<input type="button" value="test" onclick="check()">
</form>
<script>
function check()
{ 
with(document.all){
	if(input1.value!=input2.value){
		alert("false")
		input1.value = "";
		input2.value = "";
	}else{
		document.forms[0].submit();
	}
}
}
</script>

屏蔽右键

// 加在body中
oncontextmenu="return false" ondragstart="return false" onselectstart="return false"

表单项不能为空

function CheckForm(){
	if(document.form.name.value.length   ==   0)   {  
		alert("请输入您姓名!");
		document.form.name.focus();
		return   false;
	}
	return   true;
}

比较两个表单项的值是否相同

function CheckForm()
if (document.form.PWD.value != document.form.PWD_Again.value)   {  
	alert("您两次输入的密码不一样!请重新输入.");
	document.ADDUser.PWD.focus();
	return false;
}
	return true;
}

限定表单项不能输入的字符

//   字符串包含测试函数
function contain(str, charset) {
    var i;
    for (i = 0; i < charset.length; i++)
        if (str.indexOf(charset.charAt(i)) >= 0)
            return true;
    return false;
}

function CheckForm() {
    if ((contain(document.form.NAME.value, "%\(\)><")) || (contain(document.form.MESSAGE.value, "%\(\)><"))) {
        alert("输入了非法字符");
        document.form.NAME.focus();
        return false;
    }
    return true;
}

检查一段字符串是否全由数字组成

function checkNum(str) { return str.match(/\D/) == null }
alert(checkNum("1232142141"))
alert(checkNum("123214214a1"))

怎么判断是否是字符

if (/[^\x00-\xff]/g.test(s)) {
    alert("含有汉字");
} else {
    alert("全是字符");
}

怎么判断是否含有汉字

if (escape(str).indexOf("%u") != -1) {
    alert("含有汉字");
} else {
    alert("全是字符");
}

邮箱格式验证

/**
 * 功能介绍:检查是否为Email Address
 * 参数说明:要检查的字符串 
 * 返回值:0:不是 1:是   
 */
function chkemail(a) {
    var i = a.length;
    var temp = a.indexOf('@');
    var tempd = a.indexOf('.');
    if (temp > 1) {
        if ((i - temp) > 3) {
            if ((i - tempd) > 0) {
                return 1;
            }

        }
    }
    return 0;
}

数字格式验证

/**
 * 功能介绍:检查是否为数字  
 * 参数说明:要检查的数字  
 * 返回值:1为是数字,0为不是数字     
 */
function fucCheckNUM(NUM) {
    var i, j, strTemp;
    strTemp = "0123456789";
    if (NUM.length == 0)
        return 0
    for (i = 0; i < NUM.length; i++) {
        j = strTemp.indexOf(NUM.charAt(i));
        if (j == -1) { //说明有字符不是数字     
            return 0;
        }
    }
    //说明是数字     
    return 1;
}

电话号码格式验证

/**
 * 功能介绍:检查是否为电话号码 
 * 参数说明:要检查的字符串     
 * 返回值:1为是合法,0为不合法     
 */
function fucCheckTEL(TEL) {
    var i, j, strTemp;
    strTemp = "0123456789-()# ";
    for (i = 0; i < TEL.length; i++) {
        j = strTemp.indexOf(TEL.charAt(i));
        if (j == -1) { //说明有字符不合法     
            return 0;
        }
    }
    //说明合法     
    return 1;
}

判断输入是否为中文的函数

function ischinese(s) {
    var ret = true;
    for (var i = 0; i < s.length; i++){
        ret = ret && (s.charCodeAt(i) >= 10000);
    }
    return ret;
}

判断用户名是否为数字字母下滑线

function notchinese(str) {
    var reg = /[^A-Za-z0-9_]/g
    if (reg.test(str)) {
        return (false);
    } else {
        return (true);
    }
}

密码验证:规则为6到16个字符、下划线,第一个字符为字母。

//验证规则为6到16数字、字母、下划线组成,首字母为字母,用于验证密码。
function validatorPassword(s){
    regu = "^[a-zA-Z][0-9a-zA-Z_]{5,15}$";
    re = new RegExp(regu);
    if (!re.test(s)) {
        document.getElementById("passwordInf").innerHTML = "不对!";
        document.getElementById("passwordInf").style.color = "red";
    } else {
        document.getElementById("passwordInf").innerHTML = "通过!";
        document.getElementById("passwordInf").style.color = "green";
        document.getElementById("passwordCheck").innerHTML = "";
    }
    //alert("6到16个数字、下划线和英文字符,第一个必须为字母,不区分字母大小写");
}
  • 0
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值