function getCookie(name)//取cookies函数 { var arr = document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)")); if(arr != null) return unescape(arr[2]); return null; } //在获取cookie时,为什么arr返回的长度为4的数组,arr[2]刚好是我要的数据 //arr[0]="name=1.css" //arr[1]="" //arr[2]="1.css" //arr[3]=";"
因为这个正则表达式返回的刚好是长度为4的数组。。第0位是包括cookie名字在内的值,第2位不包括,都是固定的
了解一下正则表达式的分组也叫子表达式,用小括号来指定
分组按左括号的顺序,从左至右,从1开始自动编号
编号0捕获的是符合整个表达式的的内容
你看下你这个表达式有几个表达式,数一下分组的编号,就知道每个分组对应的是什么内容了