zoukankan      html  css  js  c++  java
  • 常用正则

    电话:

    var phoneTest = /^1[34578]d{9}$/;
    

    网址:

                // 判断网址格式是否正确
                 function IsURL (url){
                    var strRegex = "^((https|http|ftp|rtsp|mms)?://)"
                    "?(([0-9a-z_!~*'().&= $%-] : )?[0-9a-z_!~*'().&= $%-] @)?" //ftp的user@
                    "(([0-9]{1,3}.){3}[0-9]{1,3}" // IP形式的URL- 199.194.52.184
                    "|" // 允许IP和DOMAIN(域名)
                    "([0-9a-z_!~*'()-] .)*" // 域名- www.
                    "([0-9a-z][0-9a-z-]{0,61})?[0-9a-z]." // 二级域名
                    "[a-z]{2,6})" // first level domain- .com or .museum
                    "(:[0-9]{1,4})?" // 端口- :80
                    "((/?)|" // a slash isn't required if there is no file name
                    "(/[0-9a-z_!~*'().;?:@&= $,%#-] ) /?)$";
                    var re=new RegExp(strRegex);
                    //re.test()
                    if (re.test(url)){
                        return (true);
                    }else{
                        return (false);
                    }
                  },            
    

    去掉字符串两侧的空格

    function trim(str) { //删除左右两端的空格
           return str.replace(/(^s*)|(s*$)/g, "");
       }
    

    匹配html:

    var r_html = /<!--((?!<!--)[sS])+-->/igm;

    匹配js:

    var r_js = /(//.+)|(/*)[sS]+(*/)/igm;
    

    匹配身份证:

    function idCardFn(gets) {
            //该方法由佚名网友提供;
    
            var Wi = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2, 1]; // 加权因子;
            var ValideCode = [1, 0, 10, 9, 8, 7, 6, 5, 4, 3, 2]; // 身份证验证位值,10代表X;
    
            if (gets.length == 15) {
                return isValidityBrithBy15IdCard(gets);
            } else if (gets.length == 18) {
                var a_idCard = gets.split(""); // 得到身份证数组   
                if (isValidityBrithBy18IdCard(gets) && isTrueValidateCodeBy18IdCard(a_idCard)) {
                    return true;
                }
                return false;
            }
            return false;
    
            function isTrueValidateCodeBy18IdCard(a_idCard) {
                var sum = 0; // 声明加权求和变量   
                if (a_idCard[17].toLowerCase() == 'x') {
                    a_idCard[17] = 10; // 将最后位为x的验证码替换为10方便后续操作   
                }
                for (var i = 0; i < 17; i++) {
                    sum += Wi[i] * a_idCard[i]; // 加权求和   
                }
                valCodePosition = sum % 11; // 得到验证码所位置   
                if (a_idCard[17] == ValideCode[valCodePosition]) {
                    return true;
                }
                return false;
            }
    
            function isValidityBrithBy18IdCard(idCard18) {
                var year = idCard18.substring(6, 10);
                var month = idCard18.substring(10, 12);
                var day = idCard18.substring(12, 14);
                var temp_date = new Date(year, parseFloat(month) - 1, parseFloat(day));
                // 这里用getFullYear()获取年份,避免千年虫问题   
                if (temp_date.getFullYear() != parseFloat(year) || temp_date.getMonth() != parseFloat(month) - 1 || temp_date.getDate() != parseFloat(day)) {
                    return false;
                }
                return true;
            }
    
            function isValidityBrithBy15IdCard(idCard15) {
                var year = idCard15.substring(6, 8);
                var month = idCard15.substring(8, 10);
                var day = idCard15.substring(10, 12);
                var temp_date = new Date(year, parseFloat(month) - 1, parseFloat(day));
                // 对于老身份证中的你年龄则不需考虑千年虫问题而使用getYear()方法   
                if (temp_date.getYear() != parseFloat(year) || temp_date.getMonth() != parseFloat(month) - 1 || temp_date.getDate() != parseFloat(day)) {
                    return false;
                }
                return true;
            }
    
        }
    

      

     

     

     

  • 相关阅读:
    [导入]Interesting Finds: 2007.12.17
    [导入]Interesting Finds: 2007.12.15
    [导入]Interesting Finds: 2007.12.13
    Interesting Finds: 2007.12.22
    吾生也有涯,而知也无涯。
    Hello world
    学习了clipboard复制剪切插件的使用
    在博客园学习成长
    命名空间概述
    Linux vi/vim
  • 原文地址:https://www.cnblogs.com/lhy-93/p/5973354.html
Copyright © 2011-2022 走看看