1. 程式人生 > >正則表示式 平衡組/遞迴匹配

正則表示式 平衡組/遞迴匹配

平衡組用於匹配巢狀層次結構,常用於匹配HTML標籤(當HTML內容不規範,起始標籤和結束標籤數量不同時,匹配出正確配對的標籤),在此把表示式統一以\w為例。

  • (?'group'\w) 捕獲的分組(\w匹配到的內容)命名為group,並壓入堆疊
  • (?'-group'\w) 捕獲分組(\w匹配到的內容)後,彈出group分組棧的棧頂內容(最後壓入的捕獲內容),堆疊本來為空,則本分組的匹配失敗
  • (?(group)yes|no) 如果group棧非空匹配表示式yes,否則匹配表示式no
  • (?!) 零寬負向先行斷言,由於沒有後綴表示式,試圖匹配總是失敗
文章參考:https://www.w3cschool.cn/rxoyts/l17fcozt.html