zoukankan      html  css  js  c++  java
  • 验证输入框

    验证输入框正则要去一个一个记实在是太麻烦了,索性找到了一个整合比较多的正则

     1 //验证是否匹配
     2 function validateDataType(type, value) {
     3     var pattern;
     4     switch (type.toLowerCase()) {
     5         case "非空":
     6             return (value.length > 0);
     7             break;
     8         case "数字":
     9             pattern = "^[0-9]*$";
    10             break;
    11         case "整数":
    12             pattern = "^(0|[1-9][0-9]*)$";
    13             break;
    14         case "正整数":
    15             pattern = "^\+?[1-9][0-9]*$";
    16             break;
    17         case "负整数":
    18             pattern = "^\-[1-9][0-9]*$";
    19             break;
    20         case "正数":
    21             pattern = "^(0?.[0-9]*[1-9]|[1-9][0-9]*|[1-9][0-9]*\.[0-9]+)$";
    22             break;
    23         case "负数":
    24             pattern = "^\-(0?.[0-9]*[1-9]|[1-9][0-9]*|[1-9][0-9]*\.[0-9]+)$";
    25             break;
    26         case "浮点数":
    27             pattern = "^([+-]?)[0-9]*.?[0-9]+$";
    28             break;
    29         case "正浮点数":
    30             pattern = "^(([0-9]+.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*.[0-9]+)|([0-9]*[1-9][0-9]*))$";
    31             break;
    32         case "非负浮点数":
    33             pattern = "^\d+(\.\d+)?$";
    34             break;
    35         case "金额":
    36             pattern = "^([0-9]|[0-9].[0-9]{0,2}|[1-9][0-9]*.[0-9]{0,2})$";
    37             break;
    38         case "邮编":
    39             pattern = "^\d{6}$";
    40             break;
    41         case "国内手机":
    42             pattern = "^(13|15|18)\d{9}$";
    43             break;
    44         case "国内电话":
    45             pattern = "^0\d{2,3}\-\d{7,8}$|^[0-9-]{7,13}$";
    46             break;
    47         case "国内身份证":
    48             pattern = "^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$|^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}(\d{1}|(x|X))$";
    49             break;
    50         case "ip地址": //ip4
    51             pattern = "^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5]).(\d{1,2}|1\d\d|2[0-4]\d|25[0-5]).(\d{1,2}|1\d\d|2[0-4]\d|25[0-5]).(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$";
    52             break;
    53         case "ip地址带端口": //ip4
    54             pattern = "^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5]).(\d{1,2}|1\d\d|2[0-4]\d|25[0-5]).(\d{1,2}|1\d\d|2[0-4]\d|25[0-5]).(\d{1,2}|1\d\d|2[0-4]\d|25[0-5]):\d{1,5}?$";
    55             break;
    56         case "url":
    57             pattern = "^http[s]?:\/\/([\w-]+\.)+[\w-]+([\w-.\/?%&=]*)?$";
    58             break;
    59         case "email":
    60             pattern = "^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$";
    61             break;
    62         case "仅字母":
    63             pattern = "^[A-Za-z]+$";
    64             break;
    65         case "字母和数字":
    66             pattern = "^[A-Za-z0-9]+$";
    67             break;
    68         case "仅大写字母":
    69             pattern = "^[A-Z]+$";
    70             break;
    71         case "仅小写字母":
    72             pattern = "^[a-z]+$";
    73             break;
    74         case "日期":
    75             pattern = "^((((1[6-9]|[2-9]\d)\d{2})-(0?[13578]|1[02])-(0?[1-9]|[12]\d|3[01]))|(((1[6-9]|[2-9]\d)\d{2})-(0?[13456789]|1[012])-(0?[1-9]|[12]\d|30))|(((1[6-9]|[2-9]\d)\d{2})-0?2-(0?[1-9]|1\d|2[0-9]))|(((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))-0?2-29-))$";
    76             break;
    77         case "日期时间":
    78             pattern = "^((((1[6-9]|[2-9]\d)\d{2})-(0?[13578]|1[02])-(0?[1-9]|[12]\d|3[01]))|(((1[6-9]|[2-9]\d)\d{2})-(0?[13456789]|1[012])-(0?[1-9]|[12]\d|30))|(((1[6-9]|[2-9]\d)\d{2})-0?2-(0?[1-9]|1\d|2[0-9]))|(((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))-0?2-29-)) (20|21|22|23|[0-1]?\d):[0-5]?\d:[0-5]?\d$";
    79             break;
    80         case "字母数字下划线":
    81             pattern = "^\w+$";
    82             break;
    83     }
    84     if (!pattern)
    85         return false;
    86     return new RegExp(pattern).test(value);
    87 }
  • 相关阅读:
    课程总结1
    网站概要设计说明书
    数据库设计说明书
    团队项目之7天工作计划
    NABC
    敏捷开发综述
    二维数组最大子数组
    电梯调度
    输出整数数组中 最大的子数组的结果
    【自习任我行】第二阶段个人总结10
  • 原文地址:https://www.cnblogs.com/JessieR/p/8953969.html
Copyright © 2011-2022 走看看