捕獲組能夠捕獲正則表達式中的字符模式,而且由正則表達式後面的編號或名稱來引用改模式。html
()——用來捕獲其中的字符串
\數字——用編號來引用
eg. 正則表達式 (\w)(\w)\2\1 可匹配字符串abba正則表達式
注意: 1.反向引用用來匹配html標籤很是有效如<(\w+)></\1>能夠匹配<table></table>等相似格式的標籤。express
2.默認狀況下,只要使用圓括號,就會捕獲圓括號內所包含的字符,能夠使用n選項來禁用這個默認行爲(在第7條裏會詳細介紹),或者添加?:到圓括號中。eg. (?:sophia)或(?n:sophia)此時不會捕獲sophia。spa
(?<捕獲組名稱>)\k<捕獲組名稱>——用名稱來引用htm
eg.文檔
正則表達式(?<sophia>\w)abc\k<sophia> 可匹配字符串 xabcx字符串
注意:在替換模式中使用捕獲組的格式略有不一樣,要用$一、$2等來按數值引用捕獲,用${sophia}等名稱來按名稱引用捕獲組get
分組構造 | 描述 | 模式 | 匹配 |
( subexpression ) | 捕獲匹配的子表達式並將其分配到一個從零開始的序號中 | |(\w)\1 | "deep" 中的 "ee" |