验证输入框

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

 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 }

 

转载于:https://www.cnblogs.com/JessieR/p/8953969.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值