js 正規表示式高階詳解

2021-10-06 08:31:48 字數 698 閱讀 2660

1:貪婪匹配和非貪婪匹配

正規表示式中量詞有

*(0次或者多次)

?(0次或者1次)

+(1次或者多次)

(大於等於m小於等於n次)

(n次)

這些量詞會盡可能多的匹配,比如:

'abababa ababc abe'

.match(

/(ab)

+/g)

,匹配結果是[

'ababab'

,'abab'

,'ab'

],統稱貪婪匹配

當這些量詞後面再跟乙個?,就變成了非貪婪匹配,會盡可能少的匹配,比如

'abababa ababc abe'

.match(

/(ab)

+?/g)

,用的匹配結果是 [

"ab"

,"ab"

,"ab"

,"ab"

,"ab"

,"ab"

]

2:捕獲分組和非捕獲分組

正規表示式中的小括號表示分組,分組的內容可以通過一下方式獲取

3:正向肯定查詢和正向否定查詢

?= 正向肯定查詢,x(?=y)匹配x當且僅當x後面緊跟著y

?! 正向否定查詢,x(?!y)匹配x當且僅當x後面不緊跟著y

JS正規表示式詳解

if patrn.exec s return false return true a za z0 9 if patrn.exec s return false return true if patrn.exec s return false return true 校驗密碼 只能輸入6 20個字母 ...

js正規表示式詳解

一 正則的兩種寫法 var re a 一般情況下都用簡寫的方式 效能好 var re new regexp a 需要傳入引數的時候用 二 轉義字元 n 換行 r 製表 t 回車 s 空格 s 非空格 d 數字 d 非數字 w 字元 字母 數字,下劃線 w 非字元 任意字元 真正的點 b 獨立的部分 ...

JS正規表示式詳解01

查詢符合條件的乙個字串的位置,找不到返回 1 abc search b return 1 abc search d return 1 abcabc search b g return 1 查詢符合條件的字串,並進行替換,找不到不進行替換 abcabc replace b 2 return a2cab...