天天看點

正規表達式分組模式

正規表達式分組模式

捕獲組

在正規表達式中,使用“()”進行分組,一對圓括号括起來的表達式就是一個分組。

捕獲組就是比對到括号中的内容

var reg = /(\?|&)name=[^&]*(&|$)/;

像這樣一個正則表表達式,捕獲組中的内容就是括号比對到的

var _cuttent_url = www.baidu.com?name=4567&b=3456; _cuttent_url.replace(/(\?|&)name=[^&]*(&|$)/, function ($0, $1, $2) { return $1 === '?' ? '?' : $2 })

比對到的$1就是?

比對到的$2就是&

非捕獲組

如上正則表表達式,非捕獲組中的内容就是括号以外比對到的

參考連結:https://blog.csdn.net/fqq_5280/article/details/81261307

栗子

正規表達式分組模式

如上,match比對到的第一個子串是&,第二個是mzoneToken=

如果去掉mzoneToken=的括号,match傳回的第二個子串就是&

如下:

正規表達式分組模式

這也就是很好的解釋了上面的例子

正規表達式分組模式

DONE

繼續閱讀