正則表達式 問號 冒號 ?:使用

(?:  pattern)是非捕獲型括號  匹配pattern,但不捕獲匹配結果。
(pattern )是捕獲型括號。  匹配pattern匹配pattern並捕獲結果,自動獲取組號
(?<name> pattern )  匹配pattern  匹配pattern並捕獲結果,設置name爲組名 
    使用小括號指定一個子表達式後,匹配這個子表達式的文本(也就是此分組捕獲的內容)可以在表達式或其它程序中作進一步的處理。默認情況下,每個捕獲組會自動擁有一個組號,規則是:從左向右,以分組的左括號爲標誌,第一個出現的分組的組號爲1,第二個爲2,以此類推。 
    如果正則表達式中同時存在普通捕獲組和命名捕獲組,那麼捕獲組的編號就要特別注意,編號的規則是先對普通捕獲組進行編號,再對命名捕獲組進行編號。 
     爲了避免括號太多使編號混亂,也爲了避免無用的捕獲提高效率,在不需要捕獲只需要指定分組的地方就可以使用非捕獲型括號。問題裏的非捕獲型括號就是爲此使用的
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章