歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Unix知識 >> 關於Unix >> 了解正則表達式語法

了解正則表達式語法

日期:2017/3/6 15:22:32   编辑:關於Unix
O'REILLY出版社的《Sed 與 AWK》一書中有一章專門講解正則表達式語法的 1。表達式 如果理解了正則表示式中 . 和 * 之間的區別,那麼就已經了解了元字符的兩個基本類型。 “.”可以作為通配符匹配任何單個字符,如A.E,可以匹配AEE,ALE,ABE等 * 用於正則表達式 O'REILLY出版社的《Sed 與 AWK》一書中有一章專門講解正則表達式語法的

1。表達式

如果理解了正則表示式中 . 和 * 之間的區別,那麼就已經了解了元字符的兩個基本類型。

“.”可以作為通配符匹配任何單個字符,如A.E,可以匹配AEE,ALE,ABE等

* 用於正則表達式中匹配它前面的零個或者多個單元。
你也許對*作為一個shell的元字符更熟悉,在shell中*表示零個或多個字符,但是在正則表示中,它本身不會匹配任何字符,它只用於表示它前面的單元內容。

元字符匯總

.

匹配除換行符外的任意單個字符,在awk中,也能匹配換行符

*

匹配任意個在它前面出現的字符

[...]

匹配方括號中字符類中的任意一個。如果方括號中的第一個字符為^,則表示否定匹配,即匹配除了換行符和列出

的那些字符以外的所有字符。連字符 - 用於表示字符的范圍。所以其他元字符在[]中時,都失去它們原來的含義。

^

如果作為正則表達式的第一個字符,則表示匹配行的開始

$

如果作為正則表達式的最後一個字符,則表示匹配行的結尾

\

匹配它前面字符出現的次數。 \表示匹配n次出現,\表示匹配至少n次,\表示匹配至少n次,

至多m次

\

轉義隨後的特殊字符

+

匹配一次或多次出現

?

匹配零次或一次出現

|

指定可以匹配其前面或後面的正則表達式

()

對正則表達式分組

2。編寫正則表達式

編寫正則表達式的過程:

a)知道要匹配的內容以及它如何出現在文本中

b)編寫一個模式來描述要匹配的內容

c)測試模式來查看它匹配的內容

Copyright © Linux教程網 All Rights Reserved