正則表達式、本地存儲

正則表達式

1、什么是正則表達式:

能讓計算機讀懂的字符串匹配規(guī)則。

2、正則表達式的寫法:

var re=new RegExp('規(guī)則', '可選參數(shù)');

var re=/規(guī)則/參數(shù);

3、規(guī)則中的字符

1)普通字符匹配:

如:/a/? 匹配字符 ‘a(chǎn)’,/a,b/? 匹配字符 ‘a(chǎn),b’

2)轉義字符匹配:

\d? 匹配一個數(shù)字,即0-9

\D? 匹配一個非數(shù)字,即除了0-9

\w? 匹配一個單詞字符(字母、數(shù)字、下劃線)

\W? 匹配任何非單詞字符。等價于[^A-Za-z0-9_]

\s? 匹配一個空白符

\S? 匹配一個非空白符

\b? 匹配單詞邊界

\B? 匹配非單詞邊界

.? ? 匹配一個任意字符,除了換行符‘\n’和回車符‘\r’

\1? 重復子項

4、量詞:對左邊的匹配字符定義個數(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次

5、任意一個或者范圍

[abc123] : 匹配‘a(chǎn)bc123’中的任意一個字符

[a-z0-9] : 匹配a到z或者0到9中的任意一個字符

6、限制開頭結尾

^? 以緊挨的元素開頭

$? 以緊挨的元素結尾

7、修飾參數(shù):

g: global,全文搜索,默認搜索到第一個結果接停止

i: ingore case,忽略大小寫,默認大小寫敏感

m: multiple lines,多行搜索(更改^ 和$的含義,使它們分別在任意一行對待行首和行尾匹配,而不僅僅在整個字符串的開頭和結尾匹配)

8、常用函數(shù)

1、test

用法:正則.test(字符串)? 匹配成功,就返回真,否則就返回假

2、search

用法:字符串.search(正則)? 匹配成功,返回位置,否則返回-1

3、match

用法: 字符串.match(正則);匹配成功,就返回匹配成功的數(shù)組,否則就返回null

4、replace

用法:字符串.replace(正則,新的字符串) 匹配成功的字符去替換新的字符

正則默認規(guī)則

匹配成功就結束,不會繼續(xù)匹配,區(qū)分大小寫

*、+限定符都是貪婪的,因為它們會盡可能多的匹配文字,只有在它們的后面加上一個?就可以實現(xiàn)非貪婪或最小匹配。

例如,您可能搜索 HTML 文檔,以查找括在 H1 標記內(nèi)的章節(jié)標題。該文本在您的文檔中如下:

<H1>Chapter 1 - 介紹正則表達式</H1>

貪婪:下面的表達式匹配從開始小于號 (<) 到關閉 H1 標記的大于號 (>) 之間的所有內(nèi)容。

/<.*>/

非貪婪:如果您只需要匹配開始和結束 H1 標簽,下面的非貪婪表達式只匹配

。

/<.*?>/

如果只想匹配開始的 H1 標簽,表達式則是:

/<\w+?>/

通過在 *、+ 或 ? 限定符之后放置 ?,該表達式從"貪心"表達式轉換為"非貪心"表達式或者最小匹配。







本地存儲

本地存儲分為cookie,以及新增的localStorage和sessionStorage

1、cookie 存儲在本地,容量最大4k,在同源的http請求時攜帶傳遞,損耗帶寬,可設置訪問路徑,只有此路徑及此路徑的子路徑才能訪問此cookie,在設置的過期時間之前有效。

jquery 設置cookie

$.cookie('mycookie','123',{expires:7,path:'/'});

jquery 獲取cookie

$.cookie('mycookie');

2、localStorage 存儲在本地,容量為5M或者更大,不會在請求時候攜帶傳遞,在所有同源窗口中共享,數(shù)據(jù)一直有效,除非人為刪除,可作為長期數(shù)據(jù)。

//設置:

localStorage.setItem("dat", "456");

localStorage.dat = '456';

//獲?。?/p>

localStorage.getItem("dat");

localStorage.dat

//刪除

localStorage.removeItem("dat");

3、sessionStorage 存儲在本地,容量為5M或者更大,不會在請求時候攜帶傳遞,在同源的當前窗口關閉前有效。

localStorage 和 sessionStorage 合稱為Web Storage , Web Storage支持事件通知機制,可以將數(shù)據(jù)更新的通知監(jiān)聽者,Web Storage的api接口使用更方便。

iPhone的無痕瀏覽不支持Web Storage,只能用cookie。

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容