zoukankan      html  css  js  c++  java
  • JavaScript常用判断函数(正则表达式版)

    前两天从网上摘了一篇《JavaScript常用函数》的帖子,里面写了在客户端比较常用的验证函数,但是里面的函数都是利用分解字符串的方法来进行判断的,文章提交后有不少朋友提出好多函数可以用正则表达式代替。今晚上我把这些函数改成利用正则表达式进行验证,写的好不好的地方还请各位多多指教。


    //利用这则表达式获取字符串的长度
    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;
    }


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


    //应用扩展判断是否是数值
    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);
        }

    基本的验证就写到这吧,如果那个验证写的不对,或者有朋友有更好的方法可以留言。细心的朋友肯能发现我在最后一个验证手机号的函数里用的是/^(\+86)?(1[0-9]{10})$/而不是 new RegExp("^(\+86)?(1[0-9]{10})$");本来呢我是想用后者的,但是用它的时候JavaScript会报错“错误的量词”,但是在MTracer中却正常,所以我便改成了上面的格式,奇怪错误就没了。我也不知道怎么回事。呵呵。
    对了MTracer下载

  • 相关阅读:
    LeetCode(111) Minimum Depth of Binary Tree
    LeetCode(108) Convert Sorted Array to Binary Search Tree
    LeetCode(106) Construct Binary Tree from Inorder and Postorder Traversal
    LeetCode(105) Construct Binary Tree from Preorder and Inorder Traversal
    LeetCode(99) Recover Binary Search Tree
    【Android】通过经纬度查询城市信息
    【Android】自定义View
    【OpenStack Cinder】Cinder安装时遇到的一些坑
    【积淀】半夜突然有点想法
    【Android】 HttpClient 发送REST请求
  • 原文地址:https://www.cnblogs.com/interboy/p/849921.html
Copyright © 2011-2022 走看看