日期:2014-05-16 浏览次数:20497 次
昨天写了验证(C#和正则表达式),今天又写了个js版的验证。现在贴出来,为了方便自己查阅,同时也希望能给需要的人帮助和一些启发。由于今天才开始接触js,所以可能会有一些错漏,希望大家能批评指正。
var Validator = {
VerityLib: {
//验证字符串非空
IsNotEmpty: function (input) {
if (input != '') {
return true;
} else {
return false;
}
},
//验证数字(double类型) [可以包含负号和小数点]
IsNumber: function (input) {
var regex = /^-?\d+$|^(-?\d+)(\.\d+)?$/;
if (input.match(regex)) {
return true;
} else {
return false;
}
},
//验证整数
IsInteger: function (input) {
var regex = /^-?\d+$/;
if (input.match(regex)) {
return true;
} else {
return false;
}
},
//验证非负整数
IsIntegerNotNagtive: function (input) {
var regex = /^\d+$/;
if (input.match(regex)) {
return true;
} else {
return false;
}
},
//验证正整数
IsIntegerPositive: function (input) {
var regex = /^[0-9]*[1-9][0-9]*$/;
if (input.match(regex)) {
return true;
} else {
return false;
}
},
//验证小数
IsDecimal: function (input) {
var regex = /^([-+]?[1-9]\d*\.\d+|-?0\.\d*[1-9]\d*)$/;
if (input.match(regex)) {
return true;
} else {
return false;
}
},
//验证只包含英文字母
IsEnglishCharacter: function (input) {
var regex = /^[A-Za-z]+$/;
if (input.match(regex)) {
return true;
} else {
return false;
}
},
//验证只包含数字和英文字母
IsIntegerAndEnglishCharacter: function (input) {
var regex = /^[0-9A-Za-z]+$/;
if (input.match(regex)) {
return true;
} else {
return false;
}
},
//验证只包含汉字
IsChineseCharacter: function (input) {
var regex = /^[\u4e00-\u9fa5]+$/;
if (input.match(regex)) {
return true;
} else {
return false;
}
},
//验证数字长度范围(数字前端的0计长度)[若要验证固定长度,可传入相同的两个长度数值]
IsIntegerLength: function (input, lengthBegin, lengthEnd) {
var pattern = '^\\d{' + lengthBegin + ',' + lengthEnd + '}$';
var regex = new RegExp(pattern);
if (input.match(regex)) {
return true;
} else {
return false;
}
},
//验证字符串包含内容
IsStringInclude: function (input, withEnglishCharacter, withNumber, withChineseCharacter) {
if (!Boolean(withEnglishCharacter) && !Boolean(withNumber) && !Boolean(withChineseCharacter)) {
return false; //如果英文字母、数字和汉字都没有,则返回false
}
var pattern = '^[';
if (Boolean(withEnglishCharacter)) {
pattern += 'a-zA-Z';
}
if (Boolean(withNumber)) {
pattern += '0-9';
}
if (Boolean(withChineseCharacter)) {
pattern += '\\u4E00-\\u9FA5';
}
pattern += ']+$';
var regex = new RegExp(pattern);
if (input.match(regex)) {
return true;
} else {
return false;
}
},
//验证字符串长度范围 [若要验证固定长度,可传入相同的两个长度数值]
IsStringLength: function (input, LengthBegin, LengthEnd) {
var pattern = '^.{' + lengthBegin + ',' + lengthEnd + '}$';
var regex = new RegExp(patt