昨天突然想起前段时间搜集了一些验证的方法,但是昨天回家太晚了,没时间写,今天写出来跟大家分享一下,
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
|
/**
js
验证类,各种js正则验证
1、isNull :检查输入字符串是否为空(包括全空格,"" ,null,和 "undefined") 为空返回true,否则false
2、checkPhoneNo :验证固定电话号码,首位为零的三位或四位数字加"-",在加后边6,7,8,为数字(电话有可能是六位或八位哦)
3、checkIdNo : 验证输入的身份证号是否正确
4、checkBusinessRegisterNo : 检测输入的工商注册号(十四位数字加一位数字或字母X(不区分大小写))
5、checkEmail :检测输入的邮箱地址
6、isIP :校验ip地址的格式
7、IsURL : 校验url的格式
8、isInteger :检查输入对象的值是否符合整数格式
9、isMobel :检查手机号码是否符合要求(手机号码验证,验证13系列和150-159(154除外)、180、185、186、187、188、189几种号码,长度11位)
10、IsPostId :检查邮政编码是否符合要求(6位数字)
11、isChinaOrNumbOrLett :检查输入字符串是否只有汉字、字母、数字组成
12、isNumberOrLetter :检查输入字符串是否只由英文字母和数字组成
13、checkQQ :检查QQ的格式是否正确(5到10位)
14、checkQuote :检查输入的字符是否具有特殊字符,特殊字符包括字符包括以下字符(可以自行添加,删除)
"~", "`", "!", "@", "#", "$", "%", "^", "&", "*",
"{", "}", "[", "]", "(", ")",":", ";", "'", "|",
"\\", "<", ">", "?", "/", "<<", ">>", "||", "//",
"admin", "administrators", "administrator", "管理员", "系统管理员",
"select", "delete", "update", "insert", "create",
"drop", "alter", "trancate"
15、checkDate :检查日期格式是否正确(2013-03-12)
16、checkTime : 检查时间格式是否正确 (12:48:22)
17、checkFullTime :检查全日期时间格式是否正确(2013-03-12 12:48:22)
18、checkDecimal : 检查输入的一串字符是否为小数
19、isHas :判断字符串str2中是否包含字符串str1 ,包含返回true 否则返回false
20、isSame : 判断str1和str2是否一致,一致返回true 否则返回false
*/
function
Validator() {
/**
用途:检查输入字符串是否为空(包括全空格,null,和 "undefined")
输入:str
返回:
如果全是空返回true,否则返回false
*/
this
.isNull =
function
( str ){
if
( str ==
""
)
return
true
;
if
( str ==
null
)
return
true
;
if
( str ==
"undefined"
)
return
true
;
var
regu =
"^[ ]+$"
;
var
re =
new
RegExp(regu);
return
re.test(str);
}
/**
用途:检查输入电话号码是否正确
输入:
s:字符串
返回:
如果通过验证返回true,否则返回false
格式:区号-号码
区号-3、4位
号码-6、7、8位
*/
this
.checkPhoneNo =
function
( s ){
var
regu =/^0[0-9]{2,3}-[0-9]\d{5,7}$/;
var
re =
new
RegExp(regu);
if
(re.test(s)){
return
true
;
}
else
{
return
false
;
}
}
/**
用途:检查输入身份证号码是否正确
输入:
s:字符串
返回:
如果通过验证返回true,否则返回false
* 格式: 15位or18位
*/
this
.checkIdNo =
function
( s ){
var
regu15 =/^(\d{8})(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])(\d{3})$/;
var
re15 =
new
RegExp(regu15);
var
regu18 =/^(\d{6})(18|19|20)(\d{2})(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])(\d{3})(\d|[xX])$/;
var
re18 =
new
RegExp(regu18);
if
(re15.test(s) || re18.test(s)) {
return
true
;
}
else
{
return
false
;
}
}
/**
工商注册号
* 格式: 15位
*/
this
.checkBusinessRegisterNo =
function
( s ){
var
regu =/^(\d{14})(\d|[xX])$/;
var
re =
new
RegExp(regu);
if
(re.test(s)) {
return
true
;
}
else
{
return
false
;
}
}
/**
用途:检查输入的Email信箱格式是否正确
输入:
strEmail:字符串
返回:
如果通过验证返回true,否则返回false
*/
this
.checkEmail =
function
(strEmail) {
var
emailReg = /^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/;
if
(emailReg.test(strEmail)) {
return
true
;
}
else
{
return
false
;
}
}
/**
用途:校验ip地址的格式
输入:strIP:ip地址
返回:如果通过验证返回true,否则返回false;
*/
this
.isIP =
function
(strIP) {
if
(isNull(strIP))
return
false
;
var
re=/^(\d+)\.(\d+)\.(\d+)\.(\d+)$/
//匹配IP地址的正则表达式
if
(re.test(strIP))
{
if
( RegExp.$1 <256 && RegExp.$2<256 && RegExp.$3<256 && RegExp.$4<256)
return
true
;
}
return
false
;
}
/**
用途:校验url的格式
输入:urlString:url网址(以http(s)://或ftp://开头)
返回:如果通过验证返回true,否则返回false;
*/
this
.IsURL =
function
(urlString){
regExp = /(http[s]?|ftp):\/\/[^\/\.]+?\..+\w$/;
if
(urlString.match(regExp))
return
true
;
else
return
false
;
}
/**
用途:检查输入对象的值是否符合整数格式
输入:str 输入的字符串
返回:如果通过验证返回true,否则返回false
*/
this
.isInteger =
function
( str ){
var
regu = /^[-]{0,1}[0-9]{1,}$/;
return
regu.test(str);
}
/**
用途:检查手机号码是否符合要求(手机号码验证,验证13系列和150-159(154除外)、180、185、186、187、188、189几种号码,长度11位)
输入:str 输入的字符串
返回:如果通过验证返回true,否则返回false
*/
this
.isMobel =
function
(s){
var
regu =/^((13\d{9})|(15[0-35-9]\d{8})|(18[05-9]\d{8}))$/;
var
re =
new
RegExp(regu);
if
(re.test(s)){
return
true
;
}
else
{
return
false
;
}
}
/**
* 用途:检查邮政编码是否符合要求(6位数字)
* 输入:str 输入的字符串
* 返回:如果通过验证返回true,否则返回false
*/
this
.IsPostId =
function
(str){
var
reg=/^\d{6}$/;
return
reg.test(str);
}
/**
用途:检查输入字符串是否只有汉字、字母、数字组成
输入:
value:字符串
返回:
如果通过验证返回true,否则返回false
*/
this
.isChinaOrNumbOrLett =
function
( s ){
//判断是否是汉字、字母、数字组成
var
regu =
"^[0-9a-zA-Z\u4e00-\u9fa5]+$"
;
var
re =
new
RegExp(regu);
if
(re.test(s)) {
return
true
;
}
else
{
return
false
;
}
}
/**
用途:检查输入字符串是否只由英文字母和数字组成
输入:
s:字符串
返回:
如果通过验证返回true,否则返回false
*/
this
.isNumberOrLetter =
function
( s ){
//判断是否是数字或字母
var
regu =
"^[0-9a-zA-Z]+$"
;
var
re =
new
RegExp(regu);
if
(re.test(s)) {
return
true
;
}
else
{
return
false
;
}
}
/**
* 检查QQ的格式是否正确(5到10位)
* 输入:str 字符串
* 返回:true 或 flase; true表示格式正确
*/
this
.checkQQ =
function
(str){
var
reg=/^\d{5,10}$/;
return
reg.test(str);
}
/**
* 检查输入的字符是否具有特殊字符
* 输入:str 字符串
* 返回:true 或 flase; true表示包含特殊字符
* 主要用于注册信息的时候验证
*/
this
.checkQuote =
function
(str){
var
items =
new
Array(
"~"
,
"`"
,
"!"
,
"@"
,
"#"
,
"$"
,
"%"
,
"^"
,
"&"
,
"*"
,
"{"
,
"}"
,
"["
,
"]"
,
"("
,
")"
,
":"
,
";"
,
"'"
,
"|"
,
"\\"
,
"<"
,
">"
,
"?"
,
"/"
,
"<<"
,
">>"
,
"||"
,
"//"
);
items.push(
"admin"
,
"administrators"
,
"administrator"
,
"管理员"
,
"系统管理员"
);
items.push(
"select"
,
"delete"
,
"update"
,
"insert"
,
"create"
,
"drop"
,
"alter"
,
"trancate"
);
str = str.toLowerCase();
for
(
var
i = 0; i < items.length; i++) {
if
(str.indexOf(items[i]) >= 0) {
return
true
;
}
}
return
false
;
}
/**
* 检查日期格式是否正确
* 输入:str 字符串
* 返回:true 或 flase; true表示格式正确
* 注意:此处不能验证中文日期格式
* 验证短日期(2007-06-05)
*/
this
.checkDate =
function
(str){
var
value = str.match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/);
if
(value ==
null
) {
return
false
;
}
else
{
var
date =
new
Date(value[1], value[3] - 1, value[4]);
return
(date.getFullYear() == value[1] && (date.getMonth() + 1) == value[3] && date.getDate() == value[4]);
}
}
/**
* 检查时间格式是否正确
* 输入:str 字符串
* 返回:true 或 flase; true表示格式正确
* 验证时间(10:57:10)
*/
this
.checkTime =
function
(str){
var
value = str.match(/^(\d{1,2})(:)?(\d{1,2})\2(\d{1,2})$/);
if
(value ==
null
) {
return
false
;
}
else
{
if
(value[1] > 24 || value[3] > 60 || value[4] > 60) {
return
false
}
else
{
return
true
;
}
}
}
/**
* 检查全日期时间格式是否正确
* 输入:str 字符串
* 返回:true 或 flase; true表示格式正确
* (2007-06-05 10:57:10)
*/
this
.checkFullTime =
function
(str){
var
value = str.match(/^(?:19|20)[0-9][0-9]-(?:(?:0[1-9])|(?:1[0-2]))-(?:(?:[0-2][1-9])|(?:[1-3][0-1])) (?:(?:[0-2][0-3])|(?:[0-1][0-9])):[0-5][0-9]:[0-5][0-9]$/);
if
(value ==
null
) {
return
false
;
}
else
{
return
true
;
}
}
/**
* 检查输入的一串字符是否为小数
* 输入:str 字符串
* 返回:true 或 flase; true表示为小数
*/
this
.checkDecimal =
function
(str){
var
regu = /^-?\d+(\.\d+)$/;
var
re =
new
RegExp(regu);
if
(re.test(str)){
return
true
;
}
else
{
return
false
;
}
}
/**
用途:判断字符串str2中是否包含字符串str1
输入:str1 字符串,str2 字符串
返回:包含返回true 否则返回false
*/
this
.isHas =
function
(str1,str2){
if
(str2.indexOf(str1) >= 0) {
return
true
;
}
else
{
return
false
;
}
}
/**
用途:判断字符串str1和字符串str2是否一致
输入:str1 字符串,str2 字符串
返回:一致返回true 否则返回false
*/
this
.isSame =
function
(str1,str2){
if
(str1==str2){
return
true
}
else
{
return
false
}
}
}
var
Validator =
new
Validator();
|
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于