1纬朝、正則
正則表達(dá)式:能讓計算機(jī)讀懂的字符串匹配規(guī)則
正則表達(dá)式寫法:
var re=new RegExp('規(guī)則', '可選參數(shù)');
var re=/規(guī)則/參數(shù);
普通字符匹配:/a/ 匹配字符 ‘a(chǎn)’,/a,b/ 匹配字符 ‘a(chǎn),b’
轉(zhuǎn)義字符匹配:
\d 匹配一個數(shù)字骄呼,即0-9
\D 匹配一個非數(shù)字共苛,即除了0-9
\w 匹配一個單詞字符(字母、數(shù)字蜓萄、下劃線)
\W 匹配任何非單詞字符隅茎。等價于[^A-Za-z0-9_]
\s 匹配一個空白符
\S 匹配一個非空白符
\b 匹配單詞邊界
\B 匹配非單詞邊界
. 匹配一個任意字符,除了換行符‘\n’和回車符‘\r’
\1 重復(fù)子項(xiàng)
量詞:對左邊的匹配字符定義個數(shù)
? 出現(xiàn)零次或一次(最多出現(xiàn)一次)嫉沽,或指明一個非貪婪限定符
+ 出現(xiàn)一次或多次(至少出現(xiàn)一次)
* 出現(xiàn)零次或多次(任意次)
{n} 出現(xiàn)n次
{n,m} 出現(xiàn)n到m次
{n,} 至少出現(xiàn)n次
任意一個或者多個范圍 :
[abc123] : 匹配‘a(chǎn)bc123’中的任意一個字符
[a-z0-9] : 匹配a到z或者0到9中的任意一個字符
限制開頭結(jié)尾
^ 以緊挨的元素開頭
$ 以緊挨的元素結(jié)尾
修飾參數(shù):
g: global辟犀,全文搜索,默認(rèn)搜索到第一個結(jié)果接停止
i: ingore case绸硕,忽略大小寫堂竟,默認(rèn)大小寫敏感
m: multiple lines魂毁,多行搜索(更改^ 和$的含義,使它們分別在任意一行對待行首和行尾匹配出嘹,而不僅僅在整個字符串的開頭和結(jié)尾匹配)
常用函數(shù):
test:用法:正則.test(字符串) 匹配成功席楚,就返回真,否則就返回假
search:用法:字符串.search(正則) 匹配成功税稼,返回位置烦秩,否則返回-1
match:用法: 字符串.match(正則);匹配成功郎仆,就返回匹配成功的數(shù)組只祠,否則就返回null
replace:用法:字符串.replace(正則,新的字符串) 匹配成功的字符去替換新的字符
正則默認(rèn)規(guī)則:匹配成功就結(jié)束扰肌,不會繼續(xù)匹配铆农,區(qū)分大小寫
貪婪模式:*、+限定符都是貪婪的狡耻,因?yàn)樗鼈儠M可能多的匹配文字墩剖,只有在它們的后面加上一個?就可以實(shí)現(xiàn)非貪婪或最小匹配。
通過在 *夷狰、+ 或 ? 限定符之后放置 ?岭皂,該表達(dá)式從"貪心"表達(dá)式轉(zhuǎn)換為"非貪心"表達(dá)式或者最小匹配。
2沼头、本地存儲:cookie爷绘、localStorage、sessionStorage
cookie:容量最大是4k进倍,可設(shè)置訪問路徑土至,只有此路徑及此路徑的子路徑才能訪問此cookie,可設(shè)置過期時間
jquery 設(shè)置cookie(參數(shù):名稱猾昆、值陶因、有效期幾天、路徑)
$.cookie('mycookie','123',{expires:7,path:'/'});
jquery 獲取cookie
$.cookie('mycookie');
localStorage:容量為5M或者更大垂蜗,不會在請求時候攜帶傳遞楷扬,在所有同源窗口中共享,數(shù)據(jù)一直有效贴见,除非人為刪除烘苹,可作為長期數(shù)據(jù)。
//設(shè)置:
localStorage.setItem("dat", "456");
localStorage.dat = '456';
//獲绕俊:
localStorage.getItem("dat");
localStorage.dat
//刪除
localStorage.removeItem("dat");
sessionStorage:容量為5M或者更大镣衡,不會在請求時候攜帶傳遞,在同源的當(dāng)前窗口關(guān)閉前有效
小結(jié):localStorage 和 sessionStorage 合稱為Web Storage。iPhone的無痕瀏覽不支持廊鸥,只能用cookie