正則進階文法,進階文法

來源:互聯網
上載者:User

正則進階文法,進階文法

注意一些編譯器不支援進階文法

一、選擇符分組反向引用

 

組和捕獲

擷取的群組可以通過從左至右計算其開括弧來編號。例如,在運算式 ((A)(B(C))) 中,存在四個這樣的組:

1    

((A)(B(C)))

2    

\A

3    

(B(C))

4    

(C)

組零始終代表整個運算式。

之所以這樣命名擷取的群組是因為在匹配中,儲存了與這些組匹配的輸入序列的每個子序列。捕獲的子序列稍後可以通過 Back 引用在運算式中使用,也可以在匹配操作完成後從匹配器擷取。

與組關聯的捕獲輸入始終是與組最近匹配的子序列。如果由於量化的緣故再次計算了組,則在第二次計算失敗時將保留其以前捕獲的值(如果有的話)例如,將字串 "aba" 與運算式 (a(b)?)+ 相匹配,會將第二組設定為 "b"。在每個匹配的開頭,所有捕獲的輸入都會被丟棄。

以 (?) 開頭的組是純的非捕獲 組,它不捕獲文本,也不針對組合計進行計數。

反向引用:

 

非擷取的群組:

 

 

 

著作權聲明:本文為博主原創文章,未經博主允許不得轉載。 http://blog.csdn.net/qq_37493888/article/details/79211703

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.