正規表示式是對字串操作的一種邏輯公式,就是用事先定義好的一些特定字元、及這些特定字元的組合,組成乙個「規則字串」,這個「規則字串」用來表達對字串的一種過濾邏輯。規定一些特殊語法表示字元類、數量限定符和位置關係,然後用這些特殊語法和普
通字元一起表示乙個模式,這就是正規表示式(regular expression)。
給定乙個正規表示式和另乙個字串,我們可以達到如下的目的:
1. 給定的字串是否符合正規表示式的過濾邏輯(稱作「匹配」);
2. 可以通過正規表示式,從字串中獲取我們想要的特定部分。
1. 靈活性、邏輯性和功能性非常的強;
2. 可以迅速地用極簡單的方式達到字串的複雜控制。
3. 對於剛接觸的人來說,比較晦澀難懂。
由於正規表示式主要應用物件是文字,因此它在各種文字編輯器場合都有應用,小到著名編輯器editplus,大到microsoft word、visual studio等大型編輯器,都可以使用正規表示式來處理文字內容。
例如找出多有符合***xx@***x.***模式的字串(也就是mail位址),要求x可以是字母、數字、下劃線、小數點、短劃線,email
位址的每一部分可以有乙個或多個x字元,例如[email protected]、[email protected]等,當然,符合這個模式的並不一定是合法的mail位址,
但至少可以做一次初步的篩選,篩選掉類似於a.b、c@d等不符合的字串。再比如說,找出所有符合yyy.yyy.yyy.yyy模式的字串(ip地
址),要求y是0~9的數字,ip位址的每一部分可以有1~3個y字元。
字元類(character class):上例中的x和y,他們在模式中表示乙個字元,但是取值範圍是一類字元中的任意乙個。
數量限定符(quantifier): 郵件位址的每一部分可以有乙個或多個x字元,ip位址的每一部 分可以有1-3個y字元
字元類和數量限定符 描述。為了表示位置關係,需要位置限定符的概念,將在下面介紹。
Linux shell指令碼之正規表示式
正規表示式是對字串操作的一種邏輯公式,就是用事先定義好的一些特定字元 及這些特定字元的組合,組成乙個 規則字串 這個 規則字串 用來表達對字串的一種過濾邏輯。規定一些特殊語法表示字元類 數量限定符和位置關係,然後用這些特殊語法和普 通字元一起表示乙個模式,這就是正規表示式 regular expre...
Linux shell指令碼之正規表示式
正規表示式是對字串操作的一種邏輯公式,就是用事先定義好的一些特定字元 及這些特定字元的組合,組成乙個 規則字串 這個 規則字串 用來表達對字串的一種過濾邏輯。規定一些特殊語法表示字元類 數量限定符和位置關係,然後用這些特殊語法和普 通字元一起表示乙個模式,這就是正規表示式 regular expre...
linux shell指令碼之if判斷
無論什麼程式語言都離不開條件判斷。shell也不例外。if list then do something here elif list then do another thing here else do something else here fi ex1 bin sh system uname ...