1。表達式
如果理解了正則表示式中 . 和 * 之間的區別,那麼就已經了解了元字符的兩個基本類型。
“.”可以作為通配符匹配任何單個字符,如A.E,可以匹配AEE,ALE,ABE等
* 用於正則表達式中匹配它前面的零個或者多個單元。
你也許對*作為一個shell的元字符更熟悉,在shell中*表示零個或多個字符,但是在正則表示中,它本身不會匹配任何字符,它只用於表示它前面的單元內容。
元字符匯總
.
匹配除換行符外的任意單個字符,在awk中,也能匹配換行符*
匹配任意個在它前面出現的字符[...]
匹配方括號中字符類中的任意一個。如果方括號中的第一個字符為^,則表示否定匹配,即匹配除了換行符和列出
的那些字符以外的所有字符。連字符 - 用於表示字符的范圍。所以其他元字符在[]中時,都失去它們原來的含義。
^
如果作為正則表達式的第一個字符,則表示匹配行的開始$
如果作為正則表達式的最後一個字符,則表示匹配行的結尾\
匹配它前面字符出現的次數。 \表示匹配n次出現,\表示匹配至少n次,\表示匹配至少n次,
至多m次
\
轉義隨後的特殊字符+
匹配一次或多次出現?
匹配零次或一次出現|
指定可以匹配其前面或後面的正則表達式()
對正則表達式分組2。編寫正則表達式
編寫正則表達式的過程:
a)知道要匹配的內容以及它如何出現在文本中
b)編寫一個模式來描述要匹配的內容
c)測試模式來查看它匹配的內容