JS 第十二課 正規表示式

2021-10-02 05:00:57 字數 2126 閱讀 1751

直接量建立

/pattern/attrs
物件建立

new

regexp

(pattern,attrs)

引數:

直接量字元

/

123abc/

//--->代表字母或數字本身

符號

含義\o

null

\t製表符

\v垂直製表符

\n換行符

\r回車符

\f換頁符

字元類

符號含義

[…]在括號中的任意乙個字元

[^…]

不在括號中的任意乙個字元

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

\w[a-z, a-z, 0-9]

\w[^a-z, a-z, 0-9]

\s任何unicode空白符

\s任何非unicode空白符

\d[0-9]

\d[^0-9]

重複

符號含義

重複前一項至少n次,至多m次

匹配前一項至少n次

匹配前一項n次

?匹配前一項0次或1次

+匹配前一項至少一次

*匹配前一項0次或多次

選擇

符號含義

|選擇,或

分組及捕獲

符號含義

(…)分組並捕獲,如:/(abc)+/

(?..)

分組但不捕獲

⚠️ 不**獲的分組不能被重複利用

⚠️ **獲的分組可以被重複利用,如:/(')\d+(')/,其中的第二個(')不需要再次書寫,可以寫成:/(')\d+\1/。(利用\數字的形式)

錨點

符號含義

^匹配字串開頭

$匹配字串結尾,如:/^1\d$/匹配乙個11位的手機號

\b匹配單詞邊界

\b匹配非單詞邊界

修飾符

符號含義

i不區分大小寫,如:/abc+/i

g全域性匹配

m多行匹配模式

3.1 字串上的方法

string.prototype.match(regexp)

引數:regexp–正規表示式物件

返回值:匹配項陣列

string.prototype.search(regexp)

引數:正規表示式物件

返回值:第乙個匹配項的起始位置,如果沒有匹配項,返回-1.

⚠️ 該方法不支援g

string.prototype.replace(regexp|substr, replacement)

引數:regexp|substr:正規表示式物件或需被替換的子字串

replacement:去替換原字串的新字串,或建立新字串的函式

返回值:被替換後的新字串

3.2 regexp物件提供的方法

regexp.prototype.test(string)–>檢驗字串是否匹配給定的正規表示式

引數:用來匹配的字串

返回值:布林值

/12345/

.test

('12345'

)

regexp.prototype.exec(string)–>執行搜尋匹配,得到結果陣列

引數:用來匹配的字串

返回值:完整的匹配陣列,第乙個元素是匹配的字串,餘下的元素是與分組的字表示式匹配的子串。

⚠️ 該方法會改變regexp.lastindex屬性的值。(該屬性指定下一次匹配的起始索引,只有使用全域性匹配時才生效)

第十二章 正規表示式

第十二章 正規表示式 grep acinv 搜尋字串 filename grep n the regular express.txt grep vn the regular express.txt grep in the regular express.txt grep n t ae st regu...

js數字正規表示式,js小數正規表示式

js數字正規表示式,js小數正規表示式 是否為數字 僅正數 包括正整數 正小數 0 param value returns function isnumber value 是否為所有數字 正數 負數 包括整數 小數 0 param value returns function isnumberall...

JS 正規表示式

驗證數字的正規表示式集 驗證數字 0 9 驗證n位的數字 d 驗證至少n位數字 d 驗證m n位的數字 d 驗證零和非零開頭的數字 0 1 9 0 9 驗證有兩位小數的正實數 0 9 0 9 驗證有1 3位小數的正實數 0 9 0 9 驗證非零的正整數 1 9 0 9 驗證非零的負整數 1 9 0 ...