// 验证为空
function validateEmpty(str) {
if(str.trim() == ''){
return false;
} else {
return true;
}
}
//验证IP
function validateIp(str) {
var exp = /^((\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])\.){3}(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])$/;
if (exp.test(str)) {
return true;
} else {
return false;
}
}
// 验证IP段
function validateIps(str) {
var reSpaceCheck = /^((\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])\.){3}(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])\-((\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])\.){3}(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])$/;
if (reSpaceCheck.test(str)) {
var ipsArray =ips2array(str);
var ipbegin=ipsArray[0];
var ipend=ipsArray[1];
return compareIp(ipbegin,ipend);
} else {
return false;
}
}
// IP段转换成IP数组
function ips2array(ips) {
var ipsarray = new Array(2);
for(i=0;i<2;i++) {
if(i<1) {
ipsarray[i] = ips.substring(0,ips.indexOf("-"));
ips = ips.substring(ips.indexOf("-")+1);
}else {
ipsarray[i] = ips;
}
}
return ipsarray;
}
//IP转换成数组
function ip2array(ip) {
var iparray = new Array(4);
for(i=0;i<4;i++) {
if(i<3) {
iparray[i] = ip.substring(0,ip.indexOf("."));
ip = ip.substring(ip.indexOf(".")+1);
}else {
iparray[i] = ip;
}
}
return iparray;
}
// 比较开始IP与结束IP的大小,开始IP小于等于结束IP,返回true
function compareIp(ipbegin,ipend) {
var beginArray=ip2array(ipbegin);
var endArray=ip2array(ipend);
for(i=0;i<4;i++) {
var beginIp = parseInt(beginArray[i]);
var endIp = parseInt(endArray[i]);
//alert(beginIp+" | "+endIp+" | "+(beginIp<=endIp));
if(beginIp<endIp) {
return true;
}else if(beginIp==endIp){
continue;
}else if(beginIp>endIp) {
return false;
}
}
return true;
}
// 验证IP或IP段
function validateIpAddr(str) {
return validateIp(str)||validateIps(str);
}
// 验证端口
function validatePort(str) {
if (str == '') {
return false;
}
if (!/^[\d]+$/.test(str)) {
return false;
}
if (parseInt(str) == 0 || parseInt(str) > 65535) {
return false;
}
return true;
}
//验证端口段 78,59-457,98,89-26
function validatePorts(str){
var ss =str.split(",");
for(var i =0;i<ss.length;i++){
//前后有逗号
if(ss[i]==""){
return false;
}
//无横杠
if(ss[i].indexOf("-")== -1){
if(!validatePort(ss[i])){
return false;
}
}
//有横杠
if(ss[i].indexOf("-") >=0){
//前后是横杠
if(ss[i].indexOf("-") ==0 || ss[i].indexOf("-") ==ss[i].length-1){
return false;
}
var hgs = ss[i].split("-");
//比较大小
if(parseInt(hgs[0]) > parseInt(hgs[1])){
return false;
}
//中间是横杠
for(var j =0; j<hgs.length ;j++){
if(!validatePort(hgs[j])){
return false;
}
}
}
}
return true;
}
// 验证中文
function validateCNChar(str) {
if (!/^[\u4e00-\u9fa5]+$/.test(str)) {
return false;
}
return true;
}
// 验证双字节字符(包括中文)
//function validateCNChar(str) {
// if (!/^[^\x00-\xff]$/.test(str)) {
// return false;
// }
// return true;
//}
// 验证EMAIL
function validateEMail(str) {
if (!/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/.test(str)) {
return false;
}
return true;
}
// 验证整数
function validateInt(str) {
if (str == '') {
return false;
}
return /^[\-]?([1-9]\d*|0)$/.test(str);
}
// 验证正整数
function validatePosInt(str) {
if (str == '') {
return false;
}
return /^[0-9]*[1-9][0-9]*$/.test(str);
}
// 验证日期
function validateDate(str) {
if (str == '') {
return false;
}
return /^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})/.test(str);
}
// 验证手机号码
function validateMobile(str) {
if (str == '') {
return false;
}
return /^0*\d{11}$/.test(str);
}
// 验证电话号码
function validatePhone(str) {
if (str == '') {
return false;
}
return /^\d{3,4}-\d{7,8}(-\d{3,4})?$/.test(str);
}
// 验证最小长度
function validateMinLength(str, minLength){
if (str == '') {
return false;
}
var length = str.len();
if(length < minLength)
return false;
return true;
}
// 验证最大长度
function validateMaxLength(str, maxLength){
if (str == '') {
return false;
}
var length = str.len();
if(length > maxLength)
return false;
return true;
}
// 验证长度范围
function validateLengthScope(str, minLength, maxLength){
if (str == '') {
return false;
}
if(validateMinLength(str, minLength) && validateMaxLength(str, maxLength))
return true;
return false;
}
// 验证后缀名
function validateSuffix(str, suffix){
if (str == '') {
return false;
}
var re = new RegExp("(." + suffix + ")$");
if (!re.test(str.toLowerCase()))
return false;
return true;
}
// 验证标识(以字母和下划线开头,后面是字母、数据、下划线)
function validateFlag(str) {
if (str == '') {
return false;
}
return /^[A-Za-z_]{1}\w*$/.test(str);
}
function validateCDATAEnd(str){
if(str.indexOf("]]>") >=0){
return false;
}
return true;
}
// 比较整数大小,num1大于num2返回值大于零,num1小于num2返回值小于零,相等返回值等于零。
// 参数num1和num2必须为数字类型。
function compare(num1, num2) {
if (num1 == num2) {
return 0;
} else if (num1 > num2) {
return 1;
} else {
return -1;
}
}