平衡組用于匹配嵌套層次結構,常用于匹配HTML標簽(當HTML內容不規范,起始標簽和結束標簽數量不同時,匹配出正確配對的標簽),在此把表達式統一以`\w`為例。
* `(?'group'\w)`?捕獲的分組(`\w`匹配到的內容)命名為`group`,并壓入堆棧
* `(?'-group'\w)`?捕獲分組(`\w`匹配到的內容)后,彈出`group`分組棧的棧頂內容(最后壓入的捕獲內容),堆棧本來為空,則本分組的匹配失敗
* `(?(group)yes|no)`?如果`group`棧非空匹配表達式`yes`,否則匹配表達式`no`
* `(?!)`?零寬負向先行斷言,由于沒有后綴表達式,試圖匹配總是失敗