
function checkRegExp(value,exp) {
	if (value=="")  {
		return false;
	}
	
	var pattern= new RegExp(exp);
	return pattern.test(value);
	
}

function checkEmail(value){
       if(checkRegExp(value,/[\uFF00-\uFFFF]/g))
         return false;
       if(value.length<6 || value.length>50){
	     return false;
       }
       return  checkRegExp(value,"^[a-z0-9A-Z][a-z0-9A-Z_.-]*@[a-z0-9A-Z]+[a-z0-9A-Z_.-]*[a-z0-9A-Z]{2,4}$");
  }


function checkAccount(value){
     if(checkRegExp(value,/[\uFF00-\uFFFF]/g))
         return false;
	return checkRegExp(value,"[\u4e00-\u9fa5]{3,7}|[a-z0-9A-Z][-\\w.@]{4,14}");
}



function checkPassword(value) {
   if(checkRegExp(value,/[\uFF00-\uFFFF]/g))
         return false;
   return (checkRegExp(value,"^[^　\u0020',&\\\\/\|%\"]{6,20}$")&&checkRegExp(value,"^[\u0021-\u007E]{6,20}$"));
    	
}

function checkPasswordLogin(value) {
     if(checkRegExp(value,/[\uFF00-\uFFFF]/g))
         return false;
	return (checkRegExp(value,"^[^　\u0020',&\\\\/\|%\"]{1,50}$")&&checkRegExp(value,"^[\u0021-\u007E]{1,50}$"));
	
}
function checkNickName(value) {
	//判断长度
	if(strlen(value)<4 || strlen(value)>14){
	   return false;
	}
    
	//Unicode的E000至 F8FF的范围属於私人造字区e5e4、e5e6都是空格
	if(!checkRegExp(value,"^[^\ue000-\uf8ff]+$"))   
	   return false;
	   
	return checkRegExp(value,"^[^　\u0020',&\\\\/\|%\"]+$");	
	
}

function strlen(str){
	var len;
	var i;
	len = 0;
	for (i=0;i<str.length;i++){
	if (str.charCodeAt(i)>255) 
	   len+=2; 
	else len++;
        }
	return len;
} 

//检测真实姓名
function checkName(value){
    if(value==null||value=="")
      return true;
         
    if(!checkRegExp(value,"^[^　\u0020',&\\\\/\|%\"<>]*$"))
          return false;
          
	if(strlen(value)>20){
	  return false;
	  }
	else {
	  return true;
    }
	  
}
//检测身份证号码
function isdate(intYear,intMonth,intDay){
		if(isNaN(intYear)||isNaN(intMonth)||isNaN(intDay)) return false;
		if(intMonth>12||intMonth<1) return false;
		if ( intDay<1||intDay>31)return false;
		if((intMonth==4||intMonth==6||intMonth==9||intMonth==11)&&(intDay>30)) return false;
		if(intMonth==2){
			if(intDay>29) return false;
			if((((intYear%100==0)&&(intYear%400!=0))||(intYear%4!=0))&&(intDay>28))return false;
		}
		return true;
	}
	
	function checkRegion(cId){
		var region=["11","12","13","14","15"
					,"21","22","23"
					,"31","32","33","34","35","36","37"
					,"41","42","43","44","45","46"
					,"50","51","52","53","54"
					,"61","62","63","64","65"
					,"71"
					,"81","82"];
		if(cId.substring(0,6)=="111111"){
			return false;
		}
		var _check = cId.substring(0,2);
		var tempnum = region.length;
		for(i=0; i < tempnum; i++){
			if (_check==region[i]){
				return true;
			}
		}
		return false;
	}
	
	function checkCardId(cId){
		var pattern;
		if (cId.length<15){
			
			return false;
		}
		
		if(!checkRegion(cId)){
			
			return false;
		}
		
		if(cId.length==15){
			pattern= /^\d{15}$/;
			if (pattern.exec(cId)==null){
				
				return false;
			}
			if (!isdate("19"+cId.substring(6,8),cId.substring(8,10),cId.substring(10,12))){
				
				return false;
			}
		}else if (cId.length==18){
			//正则表达式,18位且前17位全是数字，最后一位只能数字,x,X
			pattern= /^\d{17}(\d|x|X)$/;
			if (pattern.exec(cId)==null){
				
				return false;
			}
			if (!isdate(cId.substring(6,10),cId.substring(10,12),cId.substring(12,14))){
				
				return false;
			}
			var strJiaoYan=["1", "0", "X", "9", "8", "7", "6", "5", "4", "3", "2"];
			var intQuan =[7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2, 1];
			var intTemp=0;
			for(i = 0; i < cId.length - 1; i++)
			intTemp +=  cId.substring(i, i + 1)  * intQuan[i];
			intTemp %= 11;
			if(cId.substring(cId.length - 1,cId.length).toUpperCase()!=strJiaoYan[intTemp]){
				
				return false;
			}
		}else{
			
			return false;
		}
		
		return true;
	}
	
	
      
//检查护照
function passport(num){
  if(checkRegExp(num,/[\uFF00-\uFFFF]/g))
             return false;
  if(checkRegExp(num,"^[a-z0-9A-Z-]{0,20}$"))
             return true;
  else return false;
}

//检测联系电话
function checkTel(value){
    if(checkRegExp(value,/[\uFF00-\uFFFF]/g))
         return false;
         
	if(strlen(value)>20)
	  return false;
	return  checkRegExp(value,"^[0-9-\u0020]{0,20}$");
	}
//检测通讯地址
function checkAddress(value){
    if(value==null||value=="")
      return true;
    if(!checkRegExp(value,"^[^',&\\\\/\|%\"<>]*$"))
        return false;
              
	if(strlen(value)>50)
	    return false;
	else 
	    return true;
}
//检测邮政编码
function checkPost(value){
     if(checkRegExp(value,/[\uFF00-\uFFFF]/g))
         return false;
         
	if(strlen(value)>6)
	  return false;
	return  checkRegExp(value,"^[0-9]{5,6}$");
	}
	
//去除特殊的英文字符串
function checkEnglishString(value){

  value = value.toLowerCase();
  var flag = true;
  var strs =new Array("ａｄｍｉｎ","ｒｏｏｔ","ｇｍ","ｍａｓｔｅｒ","ｔｅｓｔ","７３１","admin","root","gm","master","test","731","\|","<",">","\\");
  for(var i=0;i<strs.length;i++){
    if(value.indexOf(strs[i])!=-1){
       flag = false;
       break;
      }
  }
  return flag;
  
}
//
function getEnglishString(value){
  value = value.toLowerCase();
  var specialStr = "";
  var strs =new Array("ａｄｍｉｎ","ｒｏｏｔ","ｇｍ","ｍａｓｔｅｒ","ｔｅｓｔ","７３１","admin","root","gm","master","test","731","\|","<",">","\\");
  for(var i=0;i<strs.length;i++){
    if(value.indexOf(strs[i])!=-1){
       specialStr = strs[i];
       break;
      }
  }
  return specialStr;
  
}
//呢称中使用
function checkEnglishStringNick(value){
       
  value = value.toLowerCase();
  var flag = true;
  var strs =new Array("ａｄｍｉｎ","ｒｏｏｔ","ｇｍ","ｍａｓｔｅｒ","ｔｅｓｔ","ｒｅａｌ","admin","root","gm","real","master","test");
  for(var i=0;i<strs.length;i++){
    if(value.indexOf(strs[i])!=-1){
       flag = false;
       break;
      }
  }
  return flag;
  
}
function getEnglishStringNick(value){
  value = value.toLowerCase();
  var specialStr = "";
  var strs =new Array("ａｄｍｉｎ","ｒｏｏｔ","ｇｍ","ｍａｓｔｅｒ","ｔｅｓｔ","ｒｅａｌ","admin","root","gm","real","master","test");
  for(var i=0;i<strs.length;i++){
    if(value.indexOf(strs[i])!=-1){
       specialStr = strs[i];
       break;
      }
  }
  return specialStr;
  
}
//去除特殊的英文字符串
function checkChineseString(value){
  var flag = true;
  var strs = new Array("７３１","社区","管理员","731","七三一","法轮","圆满","自焚","政治","共产党","国民党","邓小平","胡锦涛",
              "江泽民","拉登","李洪志","李宏志","李红志","李鹏","毛泽东","萨达姆","周恩来","朱镕基","温家宝",
              "希特勒","墨索里尼","山本五十六","东条英机","天皇","立法委员","民国","青天白日","三民主义","中国",
              "台湾","官方","中央人民共和国","国务院","党中央","中央军委","主义","封建","靖国","神社","法西斯",
              "纳粹","盖世太保","集中营","恐怖","贪污","腐败","杀人","抢劫","吸毒","毒品","犯罪","福尔摩莎",
              "告示","工作人员","公告","好消息","客服","客户服务","消息","中奖","礼品","赠品","派送","发送","发奖",
              "奖品","送出","派发","抽奖","同性恋","变态","娼妓","妓女","淫","你妈","强奸","傻逼","牛逼","日本",
              "布什","小布什","小泉","李鸿志","系统","客服","管理员","颁奖员","特派员","客户服务","活动发奖",
              "系統","．系","．统","．統",".系",".统",".統","【系","统】","統】", "\|","<",">","\\");

  for(var i=0;i<strs.length;i++){
    if(value.indexOf(strs[i])!=-1){
       flag = false;
       break;
      }
  }
  return flag;
}
function getChineseString(value){
  var specialStr = "";
  var strs = new Array("７３１","社区","管理员","731","七三一","法轮","圆满","自焚","政治","共产党","国民党","邓小平","胡锦涛",
              "江泽民","拉登","李洪志","李宏志","李红志","李鹏","毛泽东","萨达姆","周恩来","朱镕基","温家宝",
              "希特勒","墨索里尼","山本五十六","东条英机","天皇","立法委员","民国","青天白日","三民主义","中国",
              "台湾","官方","中央人民共和国","国务院","党中央","中央军委","主义","封建","靖国","神社","法西斯",
              "纳粹","盖世太保","集中营","恐怖","贪污","腐败","杀人","抢劫","吸毒","毒品","犯罪","福尔摩莎",
              "告示","工作人员","公告","好消息","客服","客户服务","消息","中奖","礼品","赠品","派送","发送","发奖",
              "奖品","送出","派发","抽奖","同性恋","变态","娼妓","妓女","淫","你妈","强奸","傻逼","牛逼","日本",
              "布什","小布什","小泉","李鸿志","系统","客服","管理员","颁奖员","特派员","客户服务","活动发奖",
              "系統","．系","．统","．統",".系",".统",".統","【系","统】","統】","\|","<",">","\\");

  for(var i=0;i<strs.length;i++){
    if(value.indexOf(strs[i])!=-1){
       specialStr = strs[i];
       break;
      }
  }
  return specialStr;
}
/*

==================================================================

LTrim(string):去除左边的空格

==================================================================

*/

function lTrim(str)

{

    var whitespace = new String(" \t\n\r");

    var s = new String(str);

   

    if (whitespace.indexOf(s.charAt(0)) != -1)

    {

        var j=0, i = s.length;

        while (j < i && whitespace.indexOf(s.charAt(j)) != -1)

        {

            j++;

        }

        s = s.substring(j, i);

    }

    return s;

}

 

/*

==================================================================

RTrim(string):去除右边的空格

==================================================================

*/

function rTrim(str)

{

    var whitespace = new String(" \t\n\r");

    var s = new String(str);

 

    if (whitespace.indexOf(s.charAt(s.length-1)) != -1)

    {

        var i = s.length - 1;

        while (i >= 0 && whitespace.indexOf(s.charAt(i)) != -1)

        {

            i--;

        }

        s = s.substring(0, i+1);

    }

    return s;

}

 

/*

==================================================================

Trim(string):去除前后空格

==================================================================

*/

function trim(str)

{

    return rTrim(lTrim(str));

}











