一、行定位符(^和$)
行定位符就是用來描述字串的邊界。“^”表示行的開始;“$”表示行的結尾。如:
^tm : 該表示式表示要匹配字串tm的開始位置是行頭,如tm equal Tomorrow Moon就可以匹配
tm$ : 該表示式表示要匹配字串tm的位置是行尾,Tomorrow Moon equal tm匹配。
如果要匹配的字串可以出現在字串的任意部分,那麼可以直接 寫成 :tm
二、單詞定界符(\b、\B)
單詞分界符\b,表示要查詢的字串為一個完整的單詞。如:\btm\b
還有一個大寫的\B,意思和\b相反。它匹配的字串不能是一個完整的單詞,而是其他單詞或字串的一部分。如:\Btm\B
三、字元類([ ])
正則表示式是區分大小寫的,如果要忽略大小寫可使用方括號表示式“[]”。只要匹配的字元出現在方括號內,即可表示匹配成功。但要注意:一個方括號只能匹配一個字元。例如,要匹配的字串tm不區分大小寫,那麼該表示式應該寫作如下格式:[Tt][Mm]
POSIX風格的預定義字元類如表所示:
四、選擇字元(|)
還有一種方法可以實現上面的匹配模式,就是使用選擇字元(|)。該字元可以理解為“或”,如上例也可以寫成 (T|t)(M|m),該表示式的意思是以字母T或t開頭,後面接一個字母M或m。
使用“[]”和使用“|”的區別在於“[]”只能匹配單個字元,而“|”可以匹配任意長度的字串。如果不怕麻煩,上例還可以寫為 :TM|tm|Tm|tM
五、連字元(-)
變數的命名規則是隻能以字母和下劃線開頭。但這樣一來,如果要使用正則表示式來匹配變數名的第一個字母,要寫為 :[a,b,c,d…A,B,C,D…]
這無疑是非常麻煩的,正則表示式提供了連字元“-”來解決這個問題。連字元可以表示字元的範圍。如上例可以寫成 :[a-zA-Z]
一、行定位符(^和$)
行定位符就是用來描述字串的邊界。“^”表示行的開始;“$”表示行的結尾。如:
^tm : 該表示式表示要匹配字串tm的開始位置是行頭,如tm equal Tomorrow Moon就可以匹配
tm$ : 該表示式表示要匹配字串tm的位置是行尾,Tomorrow Moon equal tm匹配。
如果要匹配的字串可以出現在字串的任意部分,那麼可以直接 寫成 :tm
二、單詞定界符(\b、\B)
單詞分界符\b,表示要查詢的字串為一個完整的單詞。如:\btm\b
還有一個大寫的\B,意思和\b相反。它匹配的字串不能是一個完整的單詞,而是其他單詞或字串的一部分。如:\Btm\B
三、字元類([ ])
正則表示式是區分大小寫的,如果要忽略大小寫可使用方括號表示式“[]”。只要匹配的字元出現在方括號內,即可表示匹配成功。但要注意:一個方括號只能匹配一個字元。例如,要匹配的字串tm不區分大小寫,那麼該表示式應該寫作如下格式:[Tt][Mm]
POSIX風格的預定義字元類如表所示:
四、選擇字元(|)
還有一種方法可以實現上面的匹配模式,就是使用選擇字元(|)。該字元可以理解為“或”,如上例也可以寫成 (T|t)(M|m),該表示式的意思是以字母T或t開頭,後面接一個字母M或m。
使用“[]”和使用“|”的區別在於“[]”只能匹配單個字元,而“|”可以匹配任意長度的字串。如果不怕麻煩,上例還可以寫為 :TM|tm|Tm|tM
五、連字元(-)
變數的命名規則是隻能以字母和下劃線開頭。但這樣一來,如果要使用正則表示式來匹配變數名的第一個字母,要寫為 :[a,b,c,d…A,B,C,D…]
這無疑是非常麻煩的,正則表示式提供了連字元“-”來解決這個問題。連字元可以表示字元的範圍。如上例可以寫成 :[a-zA-Z]