
String.prototype.trim = function(){return this.replace(/^\s+|\s+$/g,"");}

function isAccount(str)
{
	return /^[a-zA-Z]{1}[a-zA-Z0-9_\-]{5,19}$/.test(str);
}

function isPwd(str)
{
	return /^\S{6,16}$/.test(str);
}

function isCc(str)
{
	return /^[a-z]{2}$/.test(str);
}

function isOrg(str)
{
	return /^[a-zA-Z0-9_\-\.\(\)\/\,\ ]{1,128}$/.test(str);
}

function isContact(str)
{
	return /^[a-zA-Z0-9\ \.]{1,64}$/.test(str);
}

function isStreet(str)
{
	return /^.{1,128}$/.test(str);
}

function isOrgCn(str)
{
	str = str.trim();
	var len = str.length;
	return (len > 0 && len < 64);
}

function isContactCn(str)
{
	str = str.trim();
	var len = str.length;
	return (len > 0 && len < 32);
}

function isStreetCn(str)
{
	str = str.trim();
	var len = str.length;
	return (len > 0 && len < 64);
}

function isSp(str)
{
	if (/^[a-zA-Z]{2,32}$/.test(str)) return true;
	var ss = str.split("-");
	return /^[a-zA-Z]{2,32}$/.test(ss[1]);
}

function isCity(str)
{
	if (/^[a-zA-Z]{2,32}$/.test(str)) return true;
	var ss = str.split("-");
	return /^[a-zA-Z]{2,32}$/.test(ss[1]);
}

function isPc(str)
{	
	return /^\d{6}$/.test(str);
}

function isEmail(str)
{
	return /^[\w\-\.]+@[\w\-\.]+(\.\w+)+$/.test(str);
}

function isVoice(str)
{
	return /^\+\d{2,3}\.\d{7,15}$/.test(str);	
}

function isFax(str)
{
	if (str.length == 0) return true;
	return /^\+\d{2,3}\.\d{7,15}$/.test(str);	
}

function isMobile(str)
{
	if (str.length == 0) return true;
	return /^\d{10,15}/.test(mobile);
}


function isPhone(phone)
{
	return /^\+\d{2,3}\.\d{7,15}$/.test(phone);
}

function isZipcode(code)
{
	return /^\d{6}$/.test(code);
}


function isBirthday(birthday)
{
	return (/^(19|20)\d{2}-[0|1]\d-[0-2]\d$/.test(birthday) || /^(19|20)\d{2}-[0|1]\d-3[0-1]$/.test(birthday));
}

function isIdentity(num)
{
	return /^\d{15,25}$/.test(num);
}

function isUser(str)
{
	return /^[a-zA-Z][a-zA-Z0-9_\-]{5,19}$/.test(str);
}

function isEn(str)
{
	return /^[a-zA-Z0-9_\-\.\(\)\/\,\ ]{1,}$/.test(str);
}

function isDomain(str)
{
	str = str.toLowerCase();
	if (/^[a-z0-9A-Z\-]{1,45}\.(com|net|org|info|cn|biz|name|mobi){1}$/.test(str)) {
		if (str.substr(0, 4) != 'xn--') return str.substr(str.indexOf(".")+1);
	}

	if (/^[a-z0-9\\-]{1,64}\.([a-z]{1,5}\.cn)$/.test(str)) {
		if (str.substr(0, 4) != 'xn--') return "cn";
	}

	var part = str.split(".");
	if (part.length == 2) {
		if (/^(中国|网络|公司|cn|xn--fiqs8s|xn--55qx5d|xn--io0a7i)$/.test(part[1])) return 'cn_zh';
		if (part[1] == 'com') return 'com_zh';
		if (part[1] == 'net') return 'net_zh';
	}
	return false;
}