正規表示式的特點是:
靈活性、邏輯性和功能性非常強;
可以迅速地用極簡單的方式達到字串的複雜控制。
對於剛接觸的人來說,比較晦澀難懂。
使用「一串數字」來描述有共同屬性的資料
基本元字元:
行首尾及單子匹配
^ 匹配行首 \\^abc 以abc開頭的行
$ 匹配行尾
· 匹配單個字元 除換行符(\n)以外的任意單個字元
未定匹配次數
+ 最少匹配一次 \\(abc)+ 乙個或多個連續的abc
? 最多匹配一次 0個或乙個
* 匹配任意次數 0個或多個
·* 任意長度的任意字串
限定次數匹配:
匹配n次 \\(ab) 匹配 ababab
匹配n-m次 \\(ab) 匹配 ab,abab,ababab
匹配至少n次
其他元字元:
範圍內替換
* 匹配指定字元集合內的任何乙個字元
[^] 列表範圍取反
[^0-9] 表示匹配非數字
[cla45_?] 匹配 c l a 4 5 _ ?
[a-z] 匹配所有小寫字母
^[^a-z] 匹配不以小寫字母開頭的行
匹配字元:
\n 換行符
\r 匹配乙個回車符。
\s 匹配任何不可見字元,包括空格、製表符、換頁符等等。
\s 匹配任何可見字元。
\t 匹配乙個製表符。
\v 匹配乙個垂直製表符。
\w 匹配包括下劃線的任何單詞字元。
\w 匹配任何非單詞字元。
整體及邊界匹配:
() 組合為整體
| 或者 root|bin root bin
\b 單詞邊界 \broot\b root
\< 單詞的開頭 \單詞的結束 \\ 轉義乙個特殊字元
只能輸入漢字"^[\u4e00-\u9fa5]$"
Linux正規表示式 編寫正規表示式
為了所有實用化的用途,你可以通過使用程式產生正確的結果。然而,並不意味著程式總是如你所願的那樣正確地工作。多數情況下,如果程式不能產生想要的輸出,可以斷定真正的問題 排除輸入或語法錯誤 在於如何描述想要的東西。換句話說,應該考慮糾正問題的地方是描述想要的結果的表示式。表示式不完整或者公式表示得不正確...
linux中的正規表示式
主要是awk,sed,grep egrep 三劍客的正規表示式 基礎正規表示式 bre 1 word 搜尋以word開頭的 2 word 搜尋以word結尾的 3 代表且只能代表任意乙個字元 4 例 轉義符號 5 例0 表示多個0重複。重複0個或多個前面的字元 6 匹配所有字元。7 字元符合的重複特...
linux正規表示式 Linux 的正規表示式
我們通過sed或awk工具可以輕鬆愉快的對一堆文字分析 對資料進行處理 伺服器報錯日誌的分析 伺服器使用者訪問日誌統計分析等。但是要玩耍好sed和awk工具,正規表示式是基礎,不得不掌握。特定字元 如 1 a a 範圍字元數字字元 0 9 代表0到9數字中的任意乙個 小寫字元 a z 代表a到z字母...