1. 程式人生 > >正則表示式學習筆記(一)

正則表示式學習筆記(一)

  • 開始和結束  ^   $

'^' 表示開始  例如:'^the'  表示以 the 開頭的詞

'$' 表示結束  例如:'the$' 表示以 the 結尾的詞

'the' 表示 包含 the 的詞; 例如:there 

'^the$' 表示 只有 the 的詞 ; 呵呵 ,只有 the了

  • 一個或多個  *    +    ?

                 * 表示零個或若干個  ; 例如:' abcd* '  表示 abc 後邊有 零個

多個 d

                + 表示一個或若干個  ; 例如:' abcd+ '  表示 abc 後邊有 一個多個 d

                ?表示一個或零個     ; 例如:' abcd? '  表示 abc 後邊有 零個一個 d

  • 範圍   {  }      注意:必須指明數量下限。  比如: ab{ ,5 }    ×   這就是錯的。 
  •  *  +  ?   這三個符號可以用 { } 代替 :    * =  {0,}     + = {1,}     ?= {0,1}      

              ab{ 2 }        表示 a 後邊有兩個 b

              ab{ 2 , }      

表示 a 後邊有至少兩個 b

              ab{ 2 , 5 }   表示 a 後邊有 2 ~ 5 個 b

   |  一條豎線,表示或。例如:(a | b)c     表示 ac | bc

  • 一個任意字元

一個點;  表示可以替代一個任何字元;例如:

   a.[0-9]  :表示一個字串有一個 "a" 後面跟著一個任意字元和一個數字;

   ^.{3}$   :表示有任意三個字元的字串(長度為3個字元);

  • [  ]  方括號表示某些字元允許在一個字串中的某一特定位置出現 ( 雙引號不算 ) :

             ​​​​​​​"[ab]"  :表示一個字串有一個"a"或"b"(相當於"a¦b");
           
 "[a-d]" :表示一個字串包含小寫的'a'到'd'中的一個(相當於"a¦b¦c¦d"或者"[abcd]");
           
 "^[a-zA-Z]":表示一個以字母開頭的字串;
             
"[0-9]%"    :表示一個百分號前有一位的數字;
             
", [a-zA-Z0-9]$":表示一個字串以一個逗號後面跟著一個字母或數字結束。

  • 用法 注意項:

           你也可以在方括號裡用'^'表示不希望出現的字元,'^'應在方括號裡的第一位。(如:"%[^a-zA-Z]%"表

示兩個百分號中不應該出現字母)。

           為了逐字表達,你必須在"^.$()¦*+?{\"這些字元前加上轉移字元'\'。(這點沒懂!)

           請注意在方括號中,不需要轉義字元。

總結自 :http://www.cnblogs.com/light169/archive/2006/10/18/532347.html