// JavaScript Document

String.prototype.trim=function(){
        return this.replace(/(^\s*)|(\s*$)/g, "");
}
function $(id)
{
	return document.getElementById(id);
}
/*******************************************************************
*addCookie(name,value,dateNum)添加cookie
*
*dateNum如果为负数，就是删除cookie
*
*
*********************************************************************/

function addCookie(name,value,dateNum,path,domain)
{
	name = name.trim();
	value = value.trim();
	if(name != '')
	{
		var newDate =  new Date();
		newDate.setTime(newDate.getTime() + (dateNum)*24*60*60*1000);
		newDate = newDate.toGMTString();
		var strCookie = name + '=' + escape(value) ;	
		if(dateNum && dateNum != '')
			strCookie+= ';expires=' + newDate;
		strCookie += (path)? ';path=' + path :'';
		strCookie += (domain)? ';domain=' + domain :'';
		document.cookie = strCookie;
	}
}
function delCookie(name)
{
	addCookie(name,'', -1);
}
function CookieExist(name)
{
	name +='=';
	if(document.cookie.indexOf(name) == -1)
		return false
	else
		return true;

}
function getCookie(CookieName)
{
	if(CookieName.trim() == '')
		return '';
	CookieName = CookieName.trim();
	var resultCookie = '';
	if(CookieExist(CookieName))
	{
		var strCookie = document.cookie;
		if(!strCookie || strCookie =='')
			return false;
		var arrCookies = strCookie.split(';');
		for(var i = 0 ; i < arrCookies.length; i++)
		{
			arrCookie_single = arrCookies[i].split('=');
			if(arrCookie_single[0].trim() == CookieName)
			{
				resultCookie = unescape(arrCookie_single[1]);
			}
		}
	}
	return resultCookie;
}

/********************************************************************
**
**比较通用的正则表达式，捕获url各个部分。
**注意各部分基本上都包含了相应的符号，例如端口号如果捕获成功，那就是':80'
**函数返回一个正则表达式捕获数组。
**注意，现在获得的是一个数组，所以需要通过arr[i]的方式引用。
**正则表达式所有的匹配说明::.........
**$0
**整个url本身。如果$0==null，那就是我的正则有意外，未捕获的可能。
**有一种未捕获的情况已经被发现，那就是域名后面没有以'/'结尾，如：'http://localhost'
**但是经过我的测试，IE和firefox会自动把域名后面加上'/'的。
**$1-$4  协议，域名，端口号，还有最重要的路径path！
**$5-$7  文件名，锚点(#top)，query参数(?id=55)
**
*********************************************************************/	
	
	function UrlRegEx(url)
	{	
		//如果加上/g参数，那么只返回$0匹配。也就是说arr.length = 0
		var re = /(\w+):\/\/([^\:|\/]+)(\:\d*)?(.*\/)([^#|\?|\n]+)?(#.*)?(\?.*)?/i;
		//re.exec(url);
		var arr = url.match(re);
		return arr;
	
	}
