JS/正则 验证 数字 电话号码 传真 邮箱 手机号码 邮编 日期

1、数字
function testisNum(object)
{
   var s =document.getElementById(object.id).value;
    if(s!="")
    {
         if(isNaN(s))
        {
         alert("请输入数字");
         object.value="";
         object.focus();
        }
    }
}

2、电话号码,传真
//校验普通电话、传真号码:可以“+”开头,除数字外,可含有“-”
function isTel(object)
{
//国家代码(2到3位)-区号(2到3位)-电话号码(7到8位)-分机号(3位)"
var s =document.getElementById(object.id).value; 
var pattern =/^(([0\+]\d{2,3}-)?(0\d{2,3})-)(\d{7,8})(-(\d{3,}))?$/;
//var pattern =/(^[0-9]{3,4}\-[0-9]{7,8}$)|(^[0-9]{7,8}$)|(^\([0-9]{3,4}\)[0-9]{3,8}$)|(^0{0,1}13[0-9]{9}$)/; 
     if(s!="")
     {
         if(!pattern.exec(s))
         {
          alert('请输入正确的电话号码:电话号码格式为国家代码(2到3位)-区号(2到3位)-电话号码(7到8位)-分机号(3位)"');
          object.value="";
          object.focus();
         }
     }
}

3、邮箱
function Check(object)
{ 
var s =document.getElementById(object.id).value; 
   var pattern =/^[a-zA-Z0-9_\-]{1,}@[a-zA-Z0-9_\-]{1,}\.[a-zA-Z0-9_\-.]{1,}$/;
       if(s!="")
       {
           if(!pattern.exec(s))
           {
            alert('请输入正确的邮箱地址');
            object.value="";
            object.focus();
           }
       }      
}

4、手机号码
//校验手机号码:必须以数字开头,除数字外,可含有“-”
function isMobile(object)
{
var s =document.getElementById(object.id).value; 
var reg0 = /^13\d{5,9}$/;
var reg1 = /^153\d{4,8}$/;
var reg2 = /^159\d{4,8}$/;
var reg3 = /^0\d{10,11}$/;
var my = false;
if (reg0.test(s))my=true;
if (reg1.test(s))my=true;
if (reg2.test(s))my=true;
if (reg3.test(s))my=true;
    if(s!="")
    {
        if (!my)
        {
           alert('请输入正确的手机号码');
           object.value="";
           object.focus();
        }
    }
}
//校验日期
function isdate(object)
{
var s =document.getElementById(object.id).value; 
var pattern =/^((\d{2}(([02468][048])|([13579][26]))[\-\/\s]?((((0?[13578])|(1[02]))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(3[01])))|(((0?[469])|(11))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(30)))|(0?2[\-\/\s]?((0?[1-9])|([1-2][0-9])))))|(\d{2}(([02468][1235679])|([13579][01345789]))[\-\/\s]?((((0?[13578])|(1[02]))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(3[01])))|(((0?[469])|(11))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(30)))|(0?2[\-\/\s]?((0?[1-9])|(1[0-9])|(2[0-8]))))))(\s(((0?[0-9])|([1-2][0-3]))\:([0-5]?[0-9])((\s)|(\:([0-5]?[0-9])))))?$/;
     if(s!="")
     {
         if(!pattern.exec(s))
         {
          alert('请输入正确的日期');
          object.value="";
          object.focus();
         }
     }         
}

5、邮编
//校验(国内)邮政编码
function isPostalCode(object)
{
var s =document.getElementById(object.id).value; 
var pattern =/^[0-9]{6}$/;
     if(s!="")
     {
         if(!pattern.exec(s))
         {
          alert('请输入正确的邮政编码');
          object.value="";
          object.focus();
         }
     }
}

6、日期
//校验日期
function isdate(object)
{
var s =document.getElementById(object.id).value; 
var pattern =/^((\d{2}(([02468][048])|([13579][26]))[\-\/\s]?((((0?[13578])|(1[02]))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(3[01])))|(((0?[469])|(11))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(30)))|(0?2[\-\/\s]?((0?[1-9])|([1-2][0-9])))))|(\d{2}(([02468][1235679])|([13579][01345789]))[\-\/\s]?((((0?[13578])|(1[02]))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(3[01])))|(((0?[469])|(11))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(30)))|(0?2[\-\/\s]?((0?[1-9])|(1[0-9])|(2[0-8]))))))(\s(((0?[0-9])|([1-2][0-3]))\:([0-5]?[0-9])((\s)|(\:([0-5]?[0-9])))))?$/;
     if(s!="")
     {
         if(!pattern.exec(s))
         {
          alert('请输入正确的日期');
          object.value="";
          object.focus();
         }
     }         
}

一、清除空格

String.prototype.trim = function()//去除空格
{
     return this.replace(/(^[\s]*)|([\s]*$)/g, "");
}

二、检查一个字符串是否包含特殊字符
/*
功能:检查传入的字符串中是否包含特殊字符
参数:str-要检查的字符串
输出:"1"表示字符串不包含特殊字符,验证成功;否则返回"0"
相关说明:空字符串可通过验证
*/
function CheckSpecialString(str)
{
StringFilter = new Array ("'" ,"\\", ".", ",", ";", "/","<","}","%","*");//可以向StringFilter中添加要过滤的字符
i=StringFilter.length;
j=str.length;
for (k=0;k 0)
      {
        firstDate = firstDate.replace(/-/g,"/") ;
      }
   
      if ( secondDate.indexOf("-") > 0)
      {
        secondDate = secondDate.replace(/-/g,"/") ;
      }
   
      var FirstDate = new Date(Date.parse(firstDate)) ;
   
      var SecondDate = new Date(Date.parse(secondDate)) ;
   
      alert( FirstDate > SecondDate );
     }

六、检查一个字符串是否为一个IP地地
   /*
   功能:检查传入的字符串是否为一个IP地址
   参数:str-要检查的字符串
   输出:true表示验证成功,false表示验证不成功
   相关说明:空字符串不可以通过验证
*/
   function CheckIP(str)
   {
        var Reg = /^([1-9]|[1-9]\d|1\d{2}|2[0-1]\d|22[0-3])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3}$/; 
    
        var booleanT = Reg.test(str);
       
       return booleanT ; 
   }

七、整除函数
function Div(exp1, exp2)
{
    var n1 = Math.round(exp1); //四舍五入
    var n2 = Math.round(exp2); //四舍五入
   
    var rslt = n1 / n2; //除
   
    if (rslt >= 0)
    {
        rslt = Math.floor(rslt); //返回值为小于等于其数值参数的最大整数值。
    }
    else
    {
        rslt = Math.ceil(rslt); //返回值为大于等于其数字参数的最小整数。
    }
   
    return rslt;
}

判断输入是否为正整数?
1) "^\\d+$"  //非负整数(正整数 + 0)
"^[0-9]*[1-9][0-9]*$"  //正整数
"^((-\\d+)|(0+))$"  //非正整数(负整数 + 0)
"^-[0-9]*[1-9][0-9]*$"  //负整数
"^-?\\d+$"    //整数
"^\\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+(\\.\\d+)?)|(0+(\\.0+)?))$"  //非正浮点数(负浮点数 + 0)
"^(-(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*)))$"  //负浮点数
"^(-?\\d+)(\\.\\d+)?$"  //浮点数

测试:


你可能感兴趣的:(正则,js)