function substringBetween( str,  open,  close)
{
        if(str == null || open == null || close == null)
            return null;
        start = str.indexOf(open);
        if(start != -1)
        {
            end = str.indexOf(close, start + open.length);
            if(end != -1)
                return str.substring(start + open.length, end);
        }
        return null;
}

function substringBefore(str, separator)
{
        if(str == null || separator == null || str.length == 0)
            return str;
        if(separator.length == 0)
            return "";
        pos = str.indexOf(separator);
        if(pos == -1)
            return str;
        else
            return str.substring(0, pos);
}


function trimLeft(str) {
	var rtnStr = "";
	for (var i = 0; i < str.length; i++){
	if (str.charAt(i) != " "){
	rtnStr = str.substr(i);
	break;
	}
	}
	return rtnStr;
}

/*
 * 去除字符串右边的空格
 * @str 待处理字符串
 * @return 去除右边空格的字符串
 */
function trimRight(str) {
	var rtnStr = "";
	for (var i = str.length - 1; i >= 0; i--){
	if (str.charAt(i) != " "){
	rtnStr = str.substring(0, i + 1);
	break;
	}
	}
	return rtnStr;
}

/*
 * 去除字符串左右边的空格
 * @str 待处理字符串
 * @return 去除左右边空格的字符串
 */
function trim(str) {
	str = trimLeft(str);
	str = trimRight(str);
	return str;
}

function getSubStrTotal(inputString, subString) {
	var total = 0;
	if (trim(inputString) == "") {
		return 0;
	} 

	while (inputString.indexOf(subString) != -1) {
		inputString = inputString.replace(subString, "");
		total += 1;
	}
	return total;
}

function isInputEmail(texto) {

	var tvalue = trim(texto.value); // email
	texto.value = tvalue;

	if (tvalue == "") { // email值为空时,返回true
		return true;
	}
	
	if (getSubStrTotal(tvalue, "@") == 1
		&& getSubStrTotal(tvalue, ".") >= 1 
		&& getSubStrTotal(tvalue, "@.") != 1 
		&& getSubStrTotal(tvalue, ".@") != 1) {
		return true;
	}
	else {
		alert("E-mail address invalid, please try again.");
		texto.focus();
		return false;
	}
}

    function isInputNotNullLimitsCharreplaced(texto,message,minlen,maxlen){
       InputNullsreplaced(texto);
	    return isInputNotNullLimitsChar(texto,message,minlen,maxlen);
    }

	    function InputNullsreplaced(texto){
        if(typeof(texto.length)=="undefined"){
            texto.value=getTrim(texto.value);
        }else{
            for(var i=0;i<texto.length;i++) {
                texto[i].value=getTrim(texto[i].value);
            }
        }
    }


	 function getLeftTrim(sInputString){
        var rtnStr;
        rtnStr=""
        for (var i=0;i<sInputString.length;i++){
            if (sInputString.charAt(i)!=" "){
            rtnStr=sInputString.substr(i);
            break;
            }
        }
        return rtnStr;
    }


    /*
    * 替换右边空格（去除字符串的右边空格）
    * 参数 sInputString  为待处理的字符串
    */

    function getRightTrim(sInputString){
        var rtnStr;
        rtnStr=""
        for (var i=sInputString.length-1;i>=0;i--){
        if (sInputString.charAt(i)!=" "){
        rtnStr=sInputString.substring(0,i+1);
        break;
        }
        }
        return rtnStr;
    }

    /*
    *替换左右边空格（去除字符串的左右边空格）
    * 参数 sInputString  为待处理的字符串
    */

    function getTrim(sInputString){

        sInputString=getRightTrim(sInputString);
        sInputString=getLeftTrim(sInputString);
        return sInputString;

    }


	    function isInputNotNullLimitsChar(texto,message,minlen,maxlen){
        var tvalue=texto.value;
        if(tvalue==""){
            texto.focus();
            alert("Please input "+message);
            return false;
        }
        if(tvalue.length>maxlen || tvalue.length<minlen){
            alert(message+"'s length must be in["+minlen+"digit--"+maxlen+"digit]!");
            texto.focus();
            return false;
        }
        return true;
    }