正則表達式 總結

正則表達式:
 
 1. 元字符(*、?、+)和文字字符組成
 
 2. #匹配的是一個位置
      脫字符號(^) : 行開始
      美元符號($) : 行結束   
    
 3. #匹配若干字符之一,字符間是‘或’關係,字符組內部和外部,元字符的定義和意義不同
    #一個字符組只能匹配目標文本中的單個字符
    字符組[]
    連字符‘-’,在[]中間,表示範圍
    
 4.  排除型字符組(不希望匹配的字符)
       [^]
  
 5.  . 匹配任意字符的字符組
 
 6.   多選結構,匹配任意子表達式 |, 可以匹配任意長度的文本(區別於字符組)
         gr[ea]y、 gr(e|a)y意義相同,
         gr[e|a]y中,|表示普通字符,和前兩者的意義不同
         gre|ay表示gre或ay
  
 7. java正則表達式:
         (?i)abc 表示abc都忽略大小寫
         a(?i)bc 表示bc忽略大小寫
         a((?i)b)c 表示只有b忽略大小寫
  
 8.  單詞分界符
             #部分不支持\<、\>
               \< 單詞的起始位置
               \> 單詞的結束位置
               \b
  
 9.  ? 表示可選項 u?:表示u可以出現一次也可以不出現
 
 10. + 表示之前緊鄰的字符出現一次或多次
 
 11. * 表示之前緊鄰的字符出現任意多次或不出現
 
 12. 空格也是普通字符, ( 、)表示元字符
 
 13. 重現次數的範圍:區間 {min,max}
 
 14. 反向引用 表示匹配與表達式先前部分匹配的同樣的文本
            ([a-z])([0-9])\1\2 : \1表示[a-z]匹配的內容,\2表示[0-9]匹配的內容
 

 15. \ + 元字符 表示對元字符進行轉義

 
 16.  (?:....) 表示只分組不捕獲,即非捕獲型括號
 
 17.        \s  表示匹配所有'空白'
              \S  除\s之外的任何字符
              \r  回車符
              \w  [a-zA-Z0-9]
              \W  [^a-zA-Z0-9]
              \d
               \D
  
  
 18.   正則表達式環視結構,不匹配任何字符,只匹配文本中的特定位置
               肯定型順序環視 (?=...)
                       (?=\d) : 匹配當前位置的右邊是數字
               逆序環視(?<=...),從右向左查看文本
                       (?<=\d),匹配當前位置的左邊有一位數字
               否定順序環視(?!...) 子表達式不能匹配右側文本
               否定逆序環視(? 
 19.  (?<=\d)(?=(\d\d\d)+$) : 只有一個捕獲型括號即:(\d\d\d)
 
 20.  (?<=\d)(?=(\d\d\d)+$)\1 : \1即指捕獲型括號(\d\d\d)
 
 21.   java中獲取第一組括號匹配的文本
              matcher.group(1);
   
 22.   條件判斷(?if  then|else)
             (?(?<=NUM:)\d+|w+) : 表示當前位置的左邊是NUM:時,則匹配後面跟一位數字,否則在其他位置嘗試使用\w
 
 
 23.  

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章