JavaScript正則表示式之語法--詼諧易懂
阿新 • • 發佈:2018-11-30
正則表示式可以用來做表單校驗,也可以用來搜尋關鍵字,匹配字元等等,功能非常強大,但是剛開始看到正則的語法就頭大,什麼程式碼,明明亂碼好嘛?!
但是這麼好用的東西怎麼能不學習,偶然看到師父轉發的文章,簡直讓我這初學者醍醐灌頂,作者講的很通俗易懂。
在文章開始前,要了解es6字串操作方法
(也有一篇微信文章轉載複述了此文,附上鍊接:一次性搞懂JavaScript正則表示式之語法)
本人學習所得:
1、推薦一個解析正則表示式的網站:Regexper,這個網站可以解析任一個正則表示式,用圖例的方式顯示,類似視覺化的效果,幫助理解正則表示式。非常好用。
2、文章沒有講到正則表達的兩種建立方法
- 字面量建立方式: reg = /pattern/flags
- 例項建立方式:reg = new RegExp(pattern,flags);
3、正則表示式的方法:exec(),用於檢索字串中的正則表示式的匹配。
全域性匹配的情況下會逐一解析字串中的字元(簡要說明,請大神輕噴並給予指點)
例如:“my name is lilly”,該字串多次呼叫exec(),依次輸出my,name,is,lilly
4、對"\b"的理解:匹配的是空格後和單詞間的單詞邊界
例子:
得到的是後一個regex
得到的是一個數組
得到的是第一個regex
6、量詞匹配例子
匹配最多
匹配最少
7、反向引用(之後補充)
8、怎麼理解零寬?
用match方法做例子,會匹配零寬(如?=)後的字元,但實際不會往後走
例子:
index仍為0,且不列印,括號內的子表示式
(用match方法時,普通括號的子表示式會列印)
對比:
寫在最後,正則的語法不經常溫習、實踐的話,兩三天全還給人家了,所以要常翻來看看。