JS常用正则表达式整理

阅读609评论0

常用正则整理:

1、验证以字母开头,长度在6~18之间,只能包含字符、数字和下划线的密码:"^[a-zA-Z]\w{5,17}$"

2、验证电话号码:"^(\(\d{3,4}-)|\d{3.4}-)?\d{7,8}$"正确格式为:"xxxx-xxxxxxx"、"xxxx-xxxxxxxx"、"xxx-xxxxxxx"、"xxx-xxxxxxxx"、"xxxxxxx"和"xxxxxxxx"。

3、验证国内电话号码:"^(\d{3}-\d{8})|\d{4}-\d{7}$",形式如 xxxx-xxxxxxx 或 xxx-xxxxxxx

4、验证手机号:"^((\(\d{3}\))|(\d{3}\-))?(\(0\d{2,3}\)|0\d{2,3}-)?[1-9]\d{6,7}$"

5、验证身份证号(15位或18位):"^\d{15}(\d{2}[A-Za-z0-9])?$"

6、验证Email地址:"^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$"

7-1、只能由26个英文字母组成:"^[A-Za-z]+$"

7-2、只能由26个大写英文字母组成:"^[A-Z]+$"

7-3、只能由26个小写英文字母组成:"^[a-z]+$"

7-4、只能由数字和26个英文字母组成:"^[A-Za-z0-9]+$"

7-5、只能由数字、26个英文字母或者下划线组成的字符串:"^\w+$"

8、整数或者小数:"^[0-9]+([.][0-9]+){0,1}$"

9-1、只能数字:"^[0-9]*$"

9-2、n位的数字:"^\d{n}$"

9-3、至少n位的数字:"^\d{n,}$"

9-4、m~n位的数字:"^\d{m,n}$"

9-5、零和非零开头的数字:"^(0|[1-9][0-9]*)$"

9-6、有两位小数的正实数:"^[0-9]+(\.[0-9]{2})?$"

9-7、有1~3位小数的正实数:"^[0-9]+(\.[0-9]{1,3})?$"

9-8、非零的正整数:"^\+?[1-9][0-9]*$"

9-9、非零的负整数:"^\-[1-9][0-9]*$"

10、长度为8的字符:"^.{8}$"

11、验证是否含有^%&',;=?$\"等字符:"[^%&',;=?$\x22]+"

12、只能输入汉字:"^[\u4e00-\u9fa5]{0,}$"

13、双字节字符(包括汉字在内):"^\x00-\xff*$";

14、验证http://类型的URL:"^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$"

15、验证一年的12个月:"^(0?[1-9]|1[0-2])$"正确格式为:"01"~"09"和"1"~"12"

16、验证一个月的31天:"^((0?[1-9])|((1|2)[0-9])|30|31)$"正确格式为;"01"~"09"、"10"~"29"和"30"~"31"

17、获取日期:"^\\d{4}[年|\-|\.]\d{\1-\12}[月|\-|\.]\d{\1-\31}日?$"

18、匹配空行:"\n[\s| ]*\r"

19、匹配html标签:"<(.*)>(.*)<\/(.*)>|<(.*)\/>"

20、匹配首尾空白字符:"^\s*|\s*$"

21、匹配腾讯QQ号:"^[1-9][0-9]{4,}$"

22、匹配中国邮政编码:"^[1-9]\\d{5}(?!\d)$"

23、匹配ip地址:"^([1-9]{1,3}\.){3}[1-9]$"

24、匹配MAC地址:"^([A-Fa-f0-9]{2}\:){5}[A-Fa-f0-9]$"

25、验证年龄:"^(1[0-2]\d|\d{1,2})$"

26、验证货币值:"^\d+\.\d{2}$"

扩展:

1、利用正则表达式限制文本框输入内容:

只能输入中文:onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\u4E00-\u9FA5]/g,''))"

只能输入全角字符: onkeyup="value=value.replace(/[^\uFF00-\uFFFF]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\uFF00-\uFFFF]/g,''))"

只能输入数字:onkeyup="value=value.replace(/[^\d]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"

只能输入数字和英文:onkeyup="value=value.replace(/[\W]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"


2、整理的一些函数

1)判断日期类型是否为YYYY-MM-DD类型    

    function IsDate(str){     

        if(str.length!=0){    

            var reg = /^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/;     

            var r = str.match(reg);     

            if(r==null){

               return true;

           }else{

              return false;

         }

        }else{

             return false;

        }

    }     

   

2)判断日期类型是否为YYYY-MM-DD hh:mm:ss类型    

    function IsDateTime(str){       

        if(str.length!=0){    

            var reg = /^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/;     

            var r = str.match(reg);     

            if(r==null){

        return true;

        }else{

        return false;

        }

            }else{

        return false;

        }   

    }     

   

3)判断日期类型是否为hh:mm:ss类型    

    function IsTime(str){       

        if(str.length!=0){    

    reg=/^((20|21|22|23|[0-1]\d)\:[0-5][0-9])(\:[0-5][0-9])?$/     

            if(!reg.test(str){

        return false;

        }else{

        return true;

        }

            }else{

        return false;

        } 

    }     

   

4)判断字符是否为英文字母    

    function IsLetter(str){       

        if(str.length!=0){    

                reg=/^[a-zA-Z]+$/;     

                if(!reg.test(str)){    

                   return false;

                }else{

                return true;

                }

            }else{

               return false;

        }  

    }     

   

5)判断字符是否为整数    

    function IsInteger(str){         

        if(str.length!=0){    

            reg=/^[-+]?\d*$/;     

            if(!reg.test(str)){    

                return false;

            }else{

                return true;

            }

        }else{

            return false;

        }    

    }     

   

6)判断字符是否为数字或大小写字母    

    function IsString(str){     

      &nb


0 位网友评论:

欢迎来评论

暂不支持评论