﻿///字符串处理类

function StringHelper(){}

///字符值去空格
StringHelper.trim = function(s)
{
	s += "";
	return s.replace(/^\s+|\s+$/g,'');
};

///验证是否为整数
StringHelper.isInt = function(s)
{
    return new RegExp(/^(0|[1-9][0-9]*)$/).test(this.trim(s));
};

StringHelper.isCleanString = function(s)
{
    return new RegExp(/^[A-Za-z0-9_]+$/).test(this.trim(s));
};

///验证是否为Email地址
StringHelper.isEmail = function(s)
{
    return new RegExp(/^(\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*)$/).test(this.trim(s));
};

///验证是否为空
StringHelper.isEmpty = function(s)
{
	return this.trim(s).length == 0;
};

///验证是否为URL地址
StringHelper.queryString = function(item)
{ 
   var sValue=location.search.match(new RegExp("[\?\&]"+item+"=([^\&]*)(\&?)","i")) ;
   return sValue?sValue[1]:sValue;
};

StringHelper.buildFlatXmlString = function(rootName, arrNames, arrValues)
{
	var returnVal = ("<" + rootName + ">");
	for(var i = 0; i < arrNames.length; i++)
	{
		returnVal += ("<" + arrNames[i] + ">");
		if(arrValues[i] != null) returnVal += this.encodeXml(arrValues[i]);
		returnVal += ("</" + arrNames[i] + ">");
	}
	returnVal += ("</" + rootName + ">");
	return returnVal;
};

StringHelper.encodeXml = function(s)
{
	s = s.replace(/\x26/g,"&#38;");     //&
    s = s.replace(/\x3c/g,"&#60;");     //<
    s = s.replace(/\x3e/g,"&#62;");     //>
    s = s.replace(/\x22/g,"&#34;");     //"
    s = s.replace(/\x27/g,"&#39;");     //'
    return s;
};

//校验普通电话、手机、传真号码：可以“+”开头，除数字外，可含有“-”
StringHelper.isTel = function(s) {
    var patrn = /^[+]{0,1}(\d){1,3}[ ]?([-]?((\d)|[ ]){1,12})+$/;
    if (!patrn.exec(s))
        return false;
    return true;
}; 

///验证是否为邮编地址
StringHelper.isPostalCode = function(s) {
    var patrn = /^[0-9 ]{6}$/;
    if (!patrn.exec(s))
        return false;
    return true;
};

///验证是否为电话区号
StringHelper.isAreaCode = function(s) {
    var patrn = /^[0-9 ]{3,4}$/;
    if (!patrn.exec(s))
        return false;
    return true;
};

///验证是否为正确的QQ号码
StringHelper.isQQCode = function(s) {
    var patrn = /^[0-9 ]{5,20}$/;
    if (!patrn.exec(s))
        return false;
    return true;
};

///验证需要用逗号分隔的内容中是否存在非法分隔符，如分号或坚隔号等
StringHelper.isCommaSplit = function(s) {
    var patrn = /^[0-9-,]+$/;
    if (!patrn.exec(s))
        return false;
    else
        return true;
};