JavaScript验证表单函数大全

常用正则表达式验证函数
  1
  2ExpandedBlockStart.gifContractedBlock.gif/**//* 
  3用途:校验ip地址的格式 
  4输入:strIP:ip地址 
  5返回:如果通过验证返回true,否则返回false; 
  6
  7*/
 
  8ExpandedBlockStart.gifContractedBlock.giffunction isIP(strIP) 
  9if (isNull(strIP)) return false
 10var re=/^(\d+)\.(\d+)\.(\d+)\.(\d+)$///匹配IP地址的正则表达式 
 11if(re.test(strIP)) 
 12ExpandedSubBlockStart.gifContractedSubBlock.gif
 13if( RegExp.$1 <256 & RegExp.$2<256 && RegExp.$3<256 && RegExp.$4<256return true
 14}
 
 15return false
 16}
 
 17
 18ExpandedBlockStart.gifContractedBlock.gif/**//* 
 19用途:检查输入字符串是否为空或者全部都是空格 
 20输入:str 
 21返回: 
 22如果全是空返回true,否则返回false 
 23*/
 
 24ExpandedBlockStart.gifContractedBlock.giffunction isNull( str )
 25if ( str == "" ) return true
 26var regu = "^[ ]+$"
 27var re = new RegExp(regu); 
 28return re.test(str); 
 29}
 
 30
 31
 32ExpandedBlockStart.gifContractedBlock.gif/**//* 
 33用途:检查输入对象的值是否符合整数格式 
 34输入:str 输入的字符串 
 35返回:如果通过验证返回true,否则返回false 
 36
 37*/
 
 38ExpandedBlockStart.gifContractedBlock.giffunction isInteger( str )
 39var regu = /^[-]{0,1}[0-9]{1,}$/
 40return regu.test(str); 
 41}
 
 42
 43ExpandedBlockStart.gifContractedBlock.gif/**//* 
 44用途:检查输入手机号码是否正确 
 45输入: 
 46s:字符串 
 47返回: 
 48如果通过验证返回true,否则返回false 
 49
 50*/
 
 51ExpandedBlockStart.gifContractedBlock.giffunction checkMobile( s )
 52var regu =/^[1][3][0-9]{9}$/
 53var re = new RegExp(regu); 
 54ExpandedSubBlockStart.gifContractedSubBlock.gifif (re.test(s)) 
 55return true
 56ExpandedSubBlockStart.gifContractedSubBlock.gif}
else
 57return false
 58}
 
 59}
 
 60
 61
 62ExpandedBlockStart.gifContractedBlock.gif/**//* 
 63用途:检查输入字符串是否符合正整数格式 
 64输入: 
 65s:字符串 
 66返回: 
 67如果通过验证返回true,否则返回false 
 68
 69*/
 
 70ExpandedBlockStart.gifContractedBlock.giffunction isNumber( s )
 71var regu = "^[0-9]+$"
 72var re = new RegExp(regu); 
 73ExpandedSubBlockStart.gifContractedSubBlock.gifif (s.search(re) != -1
 74return true
 75ExpandedSubBlockStart.gifContractedSubBlock.gif}
 else 
 76return false
 77}
 
 78}
 
 79
 80ExpandedBlockStart.gifContractedBlock.gif/**//* 
 81用途:检查输入字符串是否是带小数的数字格式,可以是负数 
 82输入: 
 83s:字符串 
 84返回: 
 85如果通过验证返回true,否则返回false 
 86
 87*/
 
 88ExpandedBlockStart.gifContractedBlock.giffunction isDecimal( str )
 89if(isInteger(str)) return true
 90var re = /^[-]{0,1}(\d+)[\.]+(\d+)$/
 91ExpandedSubBlockStart.gifContractedSubBlock.gifif (re.test(str)) 
 92if(RegExp.$1==0&RegExp.$2==0return false
 93return true
 94ExpandedSubBlockStart.gifContractedSubBlock.gif}
 else 
 95return false
 96}
 
 97}
 
 98
 99ExpandedBlockStart.gifContractedBlock.gif/**//* 
100用途:检查输入对象的值是否符合端口号格式 
101输入:str 输入的字符串 
102返回:如果通过验证返回true,否则返回false 
103
104*/
 
105ExpandedBlockStart.gifContractedBlock.giffunction isPort( str )
106return (isNumber(str) & str<65536); 
107}
 
108
109ExpandedBlockStart.gifContractedBlock.gif/**//* 
110用途:检查输入对象的值是否符合E-Mail格式 
111输入:str 输入的字符串 
112返回:如果通过验证返回true,否则返回false 
113
114*/
 
115ExpandedBlockStart.gifContractedBlock.giffunction isEmail( str )
116var myReg = /^[-_A-Za-z0-9]+@([_A-Za-z0-9]+\.)+[A-Za-z0-9]{2,3}$/
117if(myReg.test(str)) return true
118return false
119}
 
120
121ExpandedBlockStart.gifContractedBlock.gif/**//* 
122用途:检查输入字符串是否符合金额格式 
123格式定义为带小数的正数,小数点后最多三位 
124输入: 
125s:字符串 
126返回: 
127如果通过验证返回true,否则返回false 
128
129*/
 
130ExpandedBlockStart.gifContractedBlock.giffunction isMoney( s )
131var regu = "^[0-9]+[\.][0-9]{0,3}$"
132var re = new RegExp(regu); 
133ExpandedSubBlockStart.gifContractedSubBlock.gifif (re.test(s)) 
134return true
135ExpandedSubBlockStart.gifContractedSubBlock.gif}
 else 
136return false
137}
 
138}
 
139ExpandedBlockStart.gifContractedBlock.gif/**//* 
140用途:检查输入字符串是否只由英文字母和数字和下划线组成 
141输入: 
142s:字符串 
143返回: 
144如果通过验证返回true,否则返回false 
145
146*/
 
147ExpandedBlockStart.gifContractedBlock.giffunction isNumberOr_Letter( s ){//判断是否是数字或字母 
148
149var regu = "^[0-9a-zA-Z\_]+$"
150var re = new RegExp(regu); 
151ExpandedSubBlockStart.gifContractedSubBlock.gifif (re.test(s)) 
152return true
153ExpandedSubBlockStart.gifContractedSubBlock.gif}
else
154return false
155}
 
156}
 
157ExpandedBlockStart.gifContractedBlock.gif/**//* 
158用途:检查输入字符串是否只由英文字母和数字组成 
159输入: 
160s:字符串 
161返回: 
162如果通过验证返回true,否则返回false 
163
164*/
 
165ExpandedBlockStart.gifContractedBlock.giffunction isNumberOrLetter( s ){//判断是否是数字或字母 
166
167var regu = "^[0-9a-zA-Z]+$"
168var re = new RegExp(regu); 
169ExpandedSubBlockStart.gifContractedSubBlock.gifif (re.test(s)) 
170return true
171ExpandedSubBlockStart.gifContractedSubBlock.gif}
else
172return false
173}
 
174}
 
175ExpandedBlockStart.gifContractedBlock.gif/**//* 
176用途:检查输入字符串是否只由汉字、字母、数字组成 
177输入: 
178value:字符串 
179返回: 
180如果通过验证返回true,否则返回false 
181
182*/
 
183ExpandedBlockStart.gifContractedBlock.giffunction isChinaOrNumbOrLett( s ){//判断是否是汉字、字母、数字组成 
184
185var regu = "^[0-9a-zA-Z\u4e00-\u9fa5]+$"
186var re = new RegExp(regu); 
187ExpandedSubBlockStart.gifContractedSubBlock.gifif (re.test(s)) 
188return true
189ExpandedSubBlockStart.gifContractedSubBlock.gif}
else
190return false
191}
 
192}
 
193
194ExpandedBlockStart.gifContractedBlock.gif/**//* 
195用途:判断是否是日期 
196输入:date:日期;fmt:日期格式 
197返回:如果通过验证返回true,否则返回false 
198*/
 
199ExpandedBlockStart.gifContractedBlock.giffunction isDate( date, fmt ) 
200if (fmt==null) fmt="yyyyMMdd"
201var yIndex = fmt.indexOf("yyyy"); 
202if(yIndex==-1return false
203var year = date.substring(yIndex,yIndex+4); 
204var mIndex = fmt.indexOf("MM"); 
205if(mIndex==-1return false
206var month = date.substring(mIndex,mIndex+2); 
207var dIndex = fmt.indexOf("dd"); 
208if(dIndex==-1return false
209var day = date.substring(dIndex,dIndex+2); 
210if(!isNumber(year)||year>"2100" || year< "1900"return false
211if(!isNumber(month)||month>"12" || month< "01"return false
212if(day>getMaxDay(year,month) || day< "01"return false
213return true
214}
 
215
216ExpandedBlockStart.gifContractedBlock.giffunction getMaxDay(year,month) 
217if(month==4||month==6||month==9||month==11
218return "30"
219if(month==2
220if(year%4==0&year%100!=0 || year%400==0
221return "29"
222else 
223return "28"
224return "31"
225}
 
226
227ExpandedBlockStart.gifContractedBlock.gif/**//* 
228用途:字符1是否以字符串2结束 
229输入:str1:字符串;str2:被包含的字符串 
230返回:如果通过验证返回true,否则返回false 
231
232*/
 
233function isLastMatch(str1,str2) 
234ExpandedBlockStart.gifContractedBlock.gif
235var index = str1.lastIndexOf(str2); 
236if(str1.length==index+str2.length) return true
237return false
238}
 
239
240
241ExpandedBlockStart.gifContractedBlock.gif/**//* 
242用途:字符1是否以字符串2开始 
243输入:str1:字符串;str2:被包含的字符串 
244返回:如果通过验证返回true,否则返回false 
245
246*/
 
247function isFirstMatch(str1,str2) 
248ExpandedBlockStart.gifContractedBlock.gif
249var index = str1.indexOf(str2); 
250if(index==0return true
251return false
252}
 
253
254ExpandedBlockStart.gifContractedBlock.gif/**//* 
255用途:字符1是包含字符串2 
256输入:str1:字符串;str2:被包含的字符串 
257返回:如果通过验证返回true,否则返回false 
258
259*/
 
260function isMatch(str1,str2) 
261ExpandedBlockStart.gifContractedBlock.gif
262var index = str1.indexOf(str2); 
263if(index==-1return false
264return true
265}
 
266
267
268ExpandedBlockStart.gifContractedBlock.gif/**//* 
269用途:检查输入的起止日期是否正确,规则为两个日期的格式正确, 
270且结束如期>=起始日期 
271输入: 
272startDate:起始日期,字符串 
273endDate:结束如期,字符串 
274返回: 
275如果通过验证返回true,否则返回false 
276
277*/
 
278ExpandedBlockStart.gifContractedBlock.giffunction checkTwoDate( startDate,endDate ) 
279ExpandedSubBlockStart.gifContractedSubBlock.gifif!isDate(startDate) ) 
280alert("起始日期不正确!"); 
281return false
282ExpandedSubBlockStart.gifContractedSubBlock.gif}
 else if!isDate(endDate) ) 
283alert("终止日期不正确!"); 
284return false
285ExpandedSubBlockStart.gifContractedSubBlock.gif}
 else if( startDate > endDate ) 
286alert("起始日期不能大于终止日期!"); 
287return false
288}
 
289return true
290}
 
291
292ExpandedBlockStart.gifContractedBlock.gif/**//* 
293用途:检查输入的Email信箱格式是否正确 
294输入: 
295strEmail:字符串 
296返回: 
297如果通过验证返回true,否则返回false 
298
299*/
 
300ExpandedBlockStart.gifContractedBlock.giffunction checkEmail(strEmail) 
301//var emailReg = /^[_a-z0-9]+@([_a-z0-9]+\.)+[a-z0-9]{2,3}$/; 
302var emailReg = /^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/
303ExpandedSubBlockStart.gifContractedSubBlock.gifif( emailReg.test(strEmail) )
304return true
305ExpandedSubBlockStart.gifContractedSubBlock.gif}
else
306alert("您输入的Email地址格式不正确!"); 
307return false
308}
 
309}

310
311ExpandedBlockStart.gifContractedBlock.gif/**//*
312用途:检查输入的电话号码格式是否正确
313输入:
314strPhone:字符串
315返回:
316如果通过验证返回true,否则返回false
317
318*/

319ExpandedBlockStart.gifContractedBlock.giffunction checkPhone( strPhone ) 
320var phoneRegWithArea = /^[0][1-9]{2,3}-[0-9]{5,10}$/
321var phoneRegNoArea = /^[1-9]{1}[0-9]{5,8}$/
322var prompt = "您输入的电话号码不正确!"
323ExpandedSubBlockStart.gifContractedSubBlock.gifif( strPhone.length > 9 ) {
324ExpandedSubBlockStart.gifContractedSubBlock.gifif( phoneRegWithArea.test(strPhone) ){
325return true
326ExpandedSubBlockStart.gifContractedSubBlock.gif}
else{
327alert( prompt );
328return false
329}

330ExpandedSubBlockStart.gifContractedSubBlock.gif}
else{
331ExpandedSubBlockStart.gifContractedSubBlock.gifif( phoneRegNoArea.test( strPhone ) ){
332return true
333ExpandedSubBlockStart.gifContractedSubBlock.gif}
else{
334alert( prompt );
335return false
336}

337}

338}

转载于:https://www.cnblogs.com/youknow/archive/2008/07/31/1257416.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值