javascript 正規表示式筆記錄

2021-06-08 22:28:40 字數 1440 閱讀 9829

在js中,正規表示式由regexp物件標示,也可以用regexp()函式來建立。正規表示式是定義在/   /之間。

/s$/匹配以s結尾的字串,$標示結尾的意思。

在正規表示式中有些字元具有特殊的含義。

^ $ . * + ? =  ! : | \   /   ()  {}

在匹配的表示式中

/[abc]/   匹配a, b,c中任意乙個

/^[abc]/   不匹配其中任意乙個

/[a-z]/    匹配小寫字母

/[a-z0-9]/   匹配小寫字母和數字

\s匹配空格符,製表符和其他費unicode的空白符

\s匹配非unicode空白符的字元

\w匹配所有的acsii碼

\d匹配ascii碼的數字

\s任何unicode的空白符        匹配的大寫的是對小寫的取反

.  除換行符和其他unicode行終止符之外的任意字元

重複問題

最少n次,最多m次的匹配

最少n次

恰好n次

? 0次或1次

+   最少一次

*    匹配0次或多次

/a+/  匹配乙個或多個a

/a+?/只匹配乙個或多個必要的a,   匹配"aaa"中的第乙個a

匹配規則:尋找第乙個可能要匹配的位置

選擇,組合和引用

正規表示式的語法還包括指定選擇項,對子表示式分組和引用前一表示式的特殊字元.字元"|"用於分隔供選擇的字元.表示匹配其中的子項之一.這種選擇匹配是從左到右的,優先順序左邊大於右邊.

/a|ab/  匹配ab的時候,是匹配a

()的作用是把包括的內容變成子表示式,具有普通表示式的作用。

()允許我們在 同乙個正規表示式後面引用前面的子表示式。例如\1表示第乙個帶括號的子式,由於()可以巢狀,\n表示對第n個左括號開始的子式的引用。

只是組合作用的標示 (?:   )

指定匹配的位置

^   匹配字串的開頭

$   匹配字串的結束

\b  匹配乙個詞語的邊界

\b  匹配非詞語邊界的位置

(?=p)   正向前宣告,要求接下來的字元都要與模式p匹配,但不包括匹配中的那些字元

(?!p)    反向前宣告,要求接下來的字元不匹配p模式

i    執行不區分大小寫的匹配

g    全域性匹配,找到全部的結果

m    多行模式,^開始,$結束

用於模式匹配的string方法

search(),引數為正規表示式,返回第乙個匹配的位置,數字標示

repalce(),第乙個引數是正則表達,標示替換位置,第二個引數為要進行替換的字串

match(),引數為正規表示式,返回匹配位置的索引陣列

split(),引數為正則,結果為分割的字元陣列

js匹配的物件為regexp,裡面的資訊參見api。

Javascript正規表示式

這段時間學習js,正好遇到了正規表示式。下面通過使用例項介紹一下正規表示式。正規表示式,又稱正規表示法 常規表示法 英語 regular expression,在 中常簡寫為regex regexp或re 電腦科學的乙個概念。正規表示式使用單個字串來描述 匹配一系列符合某個句法規則的字串。在很多文字...

JavaScript 正規表示式

一 什麼是正規表示式 正規表示式 regular expression 是乙個描述字元模式的物件。測試正規表示式 regexp 物件包含兩個方法 test 和exec 功能基本相似,用於測試字串匹配。test 方法在字串中查詢是否存在指定的正規表示式並返回布林值,如果存在則返回true,不存 在則返...

javascript 正規表示式

正規表示式 regexp物件 主要用於表單驗證 1 建立正規表示式 1 var ret pattern pattern是內容,可以是正規表示式的內容,可以是字元或是其他的內容 2 var rag new regexp pattern 括號內可以是雙引號或者單引號 2 正規表示式的exec方法 reg...