分組
1 解決多個字符串重複
2 可以在外面獲取
格式 (任意個字符)
獲取
在正則表達式內部獲取:\數字
在正則表達式外部獲取:$數字
注意數字是從1開始的。
/(bye){2}/.test('byebye')
返回=> true {2}是重複兩次
/(bye){2}/.test('bye')
返回=> false
分組的反向引用
反向引用標識是對正則表達式中的匹配組捕獲的子字符串進行編號,通過“\編號(在表達式中)”,“$編號(在表達式外)”進行引用。從1開始計數。
/(bye)\1/.test('byebye') => true
/(bye)\1/.test('bye') => false
'123*456'.replace(/(\d{3})\*(\d{3})/, '$2*$1') => "456*123"
'123*456'.replace(/(\d{3})\*(\d{3})/, function (match, $1, $2) {
return $2 + '*' + $1
})
=> "456*123"