<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title> 验证数字最简单正则表达式大全 </title>
</head>
<body>
<h3>输入完按回车后即可验证!(自认为最简单!)</h3>
正整数: <input type="text" size="20" onkeydown="if(event.keyCode == 13) alert(/^\d+$/.test(this.value));" />
<br>
负整数: <input type="text" size="20" onkeydown="if(event.keyCode == 13) alert(/^-\d+$/.test(this.value));" />
<br>
整 数: <input type="text" size="20" onkeydown="if(event.keyCode == 13) alert(/^-?\d+$/.test(this.value));" />
<br>
正小数: <input type="text" size="20" onkeydown="if(event.keyCode == 13) alert(/^\d+\.\d+$/.test(this.value));" />
<br>
负小数: <input type="text" size="20" onkeydown="if(event.keyCode == 13) alert(/^-\d+\.\d+$/.test(this.value));" />
<br>
小 数: <input type="text" size="20" onkeydown="if(event.keyCode == 13) alert(/^-?\d+\.\d+$/.test(this.value));" />
<br>
实 数: <input type="text" size="20" onkeydown="if(event.keyCode == 13) alert(/^-?\d+\.?\d*$/.test(this.value));" />
<br>
保留1位小数:<input type="text" size="20" onkeydown="if(event.keyCode == 13) alert(/^-?\d+\.?\d{0,1}$/.test(this.value));" />
<br>
保留2位小数:<input type="text" size="20" onkeydown="if(event.keyCode == 13) alert(/^-?\d+\.?\d{0,2}$/.test(this.value));" />
<br>
保留3位小数:<input type="text" size="20" onkeydown="if(event.keyCode == 13) alert(/^-?\d+\.?\d{0,3}$/.test(this.value));" />
<br>
</body>
</html>
详细出处参考:http://www.jb51.net/article/19159.htm
1、数字
2 function testisNum(object)
3 {
4 var s =document.getElementById(object.id).value;
5 if(s!="")
6 {
7 if(isNaN(s))
8 {
9 alert("请输入数字");
10 object.value="";
11 object.focus();
12 }
13 }
14 }
15
16 2、电话号码,传真
17 //校验普通电话、传真号码:可以“+”开头,除数字外,可含有“-”
18 function isTel(object)
19 {
20 //国家代码(2到3位)-区号(2到3位)-电话号码(7到8位)-分机号(3位)"
21 var s =document.getElementById(object.id).value;
22 var pattern =/^(([0\+]\d{2,3}-)?(0\d{2,3})-)(\d{7,8})(-(\d{3,}))?$/;
23 //var pattern =/(^[0-9]{3,4}\-[0-9]{7,8}$)|(^[0-9]{7,8}$)|(^\([0-9]{3,4}\)[0-9]{3,8}$)|(^0{0,1}13[0-9]{9}$)/;
24 if(s!="")
25 {
26 if(!pattern.exec(s))
27 {
28 alert('请输入正确的电话号码:电话号码格式为国家代码(2到3位)-区号(2到3位)-电话号码(7到8位)-分机号(3位)"');
29 object.value="";
30 object.focus();
31 }
32 }
33 }
34
35 3、邮箱
36 function Check(object)
37 {
38 var s =document.getElementById(object.id).value;
39 var pattern =/^[a-zA-Z0-9_\-]{1,}@[a-zA-Z0-9_\-]{1,}\.[a-zA-Z0-9_\-.]{1,}$/;
40 if(s!="")
41 {
42 if(!pattern.exec(s))
43 {
44 alert('请输入正确的邮箱地址');
45 object.value="";
46 object.focus();
47 }
48 }
49 }
50
51 4、手机号码
52 //校验手机号码:必须以数字开头,除数字外,可含有“-”
53 function isMobile(object)
54 {
55 var s =document.getElementById(object.id).value;
56 var reg0 = /^13\d{5,9}$/;
57 var reg1 = /^153\d{4,8}$/;
58 var reg2 = /^159\d{4,8}$/;
59 var reg3 = /^0\d{10,11}$/;
60 var my = false;
61 if (reg0.test(s))my=true;
62 if (reg1.test(s))my=true;
63 if (reg2.test(s))my=true;
64 if (reg3.test(s))my=true;
65 if(s!="")
66 {
67 if (!my)
68 {
69 alert('请输入正确的手机号码');
70 object.value="";
71 object.focus();
72 }
73 }
74 }
75 //校验日期
76 function isdate(object)
77 {
78 var s =document.getElementById(object.id).value;
79 var pattern =/^((\d{2}(([02468][048])|([13579][26]))[\-\/\s]?((((0?[13578])|(1[02]))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(3[01])))|(((0?[469])|(11))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(30)))|(0?2[\-\/\s]?((0?[1-9])|([1-2][0-9])))))|(\d{2}(([02468][1235679])|([13579][01345789]))[\-\/\s]?((((0?[13578])|(1[02]))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(3[01])))|(((0?[469])|(11))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(30)))|(0?2[\-\/\s]?((0?[1-9])|(1[0-9])|(2[0-8]))))))(\s(((0?[0-9])|([1-2][0-3]))\:([0-5]?[0-9])((\s)|(\:([0-5]?[0-9])))))?$/;
80 if(s!="")
81 {
82 if(!pattern.exec(s))
83 {
84 alert('请输入正确的日期');
85 object.value="";
86 object.focus();
87 }
88 }
89 }
90
91 5、邮编
92 //校验(国内)邮政编码
93 function isPostalCode(object)
94 {
95 var s =document.getElementById(object.id).value;
96 var pattern =/^[0-9]{6}$/;
97 if(s!="")
98 {
99 if(!pattern.exec(s))
100 {
101 alert('请输入正确的邮政编码');
102 object.value="";
103 object.focus();
104 }
105 }
106 }
107
108 6、日期
109 //校验日期
110 function isdate(object)
111 {
112 var s =document.getElementById(object.id).value;
113 var pattern =/^((\d{2}(([02468][048])|([13579][26]))[\-\/\s]?((((0?[13578])|(1[02]))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(3[01])))|(((0?[469])|(11))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(30)))|(0?2[\-\/\s]?((0?[1-9])|([1-2][0-9])))))|(\d{2}(([02468][1235679])|([13579][01345789]))[\-\/\s]?((((0?[13578])|(1[02]))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(3[01])))|(((0?[469])|(11))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(30)))|(0?2[\-\/\s]?((0?[1-9])|(1[0-9])|(2[0-8]))))))(\s(((0?[0-9])|([1-2][0-3]))\:([0-5]?[0-9])((\s)|(\:([0-5]?[0-9])))))?$/;
114 if(s!="")
115 {
116 if(!pattern.exec(s))
117 {
118 alert('请输入正确的日期');
119 object.value="";
120 object.focus();
121 }
122 }
123 }
124
125 一、清除空格
126
127 String.prototype.trim = function()//去除空格
128 {
129 return this.replace(/(^[\s]*)|([\s]*$)/g, "");
130 }
131
132 二、检查一个字符串是否包含特殊字符
133 /*
134 功能:检查传入的字符串中是否包含特殊字符
135 参数:str-要检查的字符串
136 输出:"1"表示字符串不包含特殊字符,验证成功;否则返回"0"
137 相关说明:空字符串可通过验证
138 */
139 function CheckSpecialString(str)
140 {
141 StringFilter = new Array ("'" ,"\\", ".", ",", ";", "/","<","}","%","*");//可以向StringFilter中添加要过滤的字符
142 i=StringFilter.length;
143 j=str.length;
144 for (k=0;k<i;k++)
145 {
146 for (m=0;m<j;m++)
147 {
148 temp1=str.charAt(m);
149 temp2=StringFilter[k];
150 if (temp1==temp2)
151 {
152 return 0;
153 }
154 }
155 }
156 return 1;
157 }
158
159 三、检查一个字符串是否为中文
160 /*
161 功能:检查传入的字符串是否为中文
162 参数:str-要检查的字符串
163 输出:true表示验证成功,false表示验证不成功
164 相关说明:空字符串可以通过验证,且包含中文的特殊字符
165 */
166 function IsChineseString(str)
167 {
168 var pattern_cn = /^([\u4E00-\u9FA5]|[\uFE30-\uFFA0])*$/gi;
169 if(pattern_cn.test(str))
170 {
171 return true;
172 }
173 else
174 {
175 return false;
176 }
177 }
178
179 四、检查一个字符串中是否包含全角空格
180 /*
181 功能:检查传入的字符串是否为中文
182 参数:str-要检查的字符串
183 输出:true表示验证成功(不饮食全解空格),false表示验证不成功
184 相关说明:空字符串可以通过验证
185 */
186 function FullSpace(str)
187 {
188 var Reg = /\ /;
189
190 var booleanT = Reg.test(str);
191
192 if (booleanT == true)
193 {
194 return false;
195 }
196
197 return true;
198 }
199
200 五、比较两个字符串形式的日期大小
201 /*比较两个字符串形式的日期大小
202 功能:比较两个字符串形式的日期大小
203 参数:firstDate-要检查日期字符串,字符串形式为"2007/05/08"或“2007-05-08”
204 secondDate-要检查的日期字符串,字符串形式为"2007/05/08"或“2007-05-08”
205 输出:true表示第一个日期大于第二个日期,false表示第二个日期大于或等于第一个日期
206 相关说明:空字符串可以通过验证
207 */
208 function DateExample(firstDate,secondDate)
209 {
210 if ( firstDate.indexOf("-") > 0)
211 {
212 firstDate = firstDate.replace(/-/g,"/") ;
213 }
214
215 if ( secondDate.indexOf("-") > 0)
216 {
217 secondDate = secondDate.replace(/-/g,"/") ;
218 }
219
220 var FirstDate = new Date(Date.parse(firstDate)) ;
221
222 var SecondDate = new Date(Date.parse(secondDate)) ;
223
224 alert( FirstDate > SecondDate );
225 }
226
227 六、检查一个字符串是否为一个IP地地
228 /*
229 功能:检查传入的字符串是否为一个IP地址
230 参数:str-要检查的字符串
231 输出:true表示验证成功,false表示验证不成功
232 相关说明:空字符串不可以通过验证
233 */
234 function CheckIP(str)
235 {
236 var Reg = /^([1-9]|[1-9]\d|1\d{2}|2[0-1]\d|22[0-3])(\.(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])){3}$/;
237
238 var booleanT = Reg.test(str);
239
240 return booleanT ;
241 }
242
243 七、整除函数
244 function Div(exp1, exp2)
245 {
246 var n1 = Math.round(exp1); //四舍五入
247 var n2 = Math.round(exp2); //四舍五入
248
249 var rslt = n1 / n2; //除
250
251 if (rslt >= 0)
252 {
253 rslt = Math.floor(rslt); //返回值为小于等于其数值参数的最大整数值。
254 }
255 else
256 {
257 rslt = Math.ceil(rslt); //返回值为大于等于其数字参数的最小整数。
258 }
259
260 return rslt;
261 }
262
263 判断输入是否为正整数?
264 1) "^\\d+$" //非负整数(正整数 + 0)
265 "^[0-9]*[1-9][0-9]*$" //正整数
266 "^((-\\d+)|(0+))$" //非正整数(负整数 + 0)
267 "^-[0-9]*[1-9][0-9]*$" //负整数
268 "^-?\\d+$" //整数
269 "^\\d+(\\.\\d+)?$" //非负浮点数(正浮点数 + 0)
270 "^(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*))$" //正浮点数
271 "^((-\\d+(\\.\\d+)?)|(0+(\\.0+)?))$" //非正浮点数(负浮点数 + 0)
272 "^(-(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*)))$" //负浮点数
273 "^(-?\\d+)(\\.\\d+)?$" //浮点数
274
275 测试:
276 <script>
277 function forcheck(ss){
278 var type="^[0-9]*[1-9][0-9]*$";
279 var re = new RegExp(type);
280 if(ss.match(re)==null)
281 {
282 alert( "请输入大于零的整数!");
283 return;
284 }
285 }
286 </script>