正則表達式

字符匹配git

. : 任意單個字符spa

[] : 指定範圍內的任意單個字符blog

[^]: 指定範圍外的任意單子字符字符串

[:alnum:]:字母和數字it

[:alpha:]:任意英文大小寫字符 : A-Z a-zgrep

[:lower:]:小寫字母im

[:upper:] :大寫字母英文

[:blank:]:空白字符 空格和製表符img

[:space:]:水平和垂直的空白字符tab

[:cntrl:]:不可打印的控制字符 退格 刪除 警鈴

[:digit:]: 十進制數字

[:xdigit:]:十六進制數字

[:graph:]:可打印的非空白字符

[:print:]:可打印字符

[:punct:]:標點符號

匹配次數

* : 任意次數包括0次

.* : 任意長度的任意字符

\? : 前一個字符0或1次

\+ : 前一個字符串至少1次

\{n\} : 前字符N次

\{m,n\}:前字符至少m次,最多n次

\{,n\} : 前字符最多n次

\{n,\} : 前字符最少n次

 

位置錨定

^:行首 grep -v "^#" /etc/fstab |grep -v "^$" (grep 排除 「井號開頭」 /etc/fstab |grep 排除 「空行」)

$:行尾

^$:空行

^[[:space:]]*$ : 空白行

 

詞首詞尾:

\<或 單詞詞首 例子:grep 「\<root」 /etc/passwd

\>或 單詞詞尾 例子:grep 「root\>」 /etc/passwd

\<root\> 匹配整個單詞 等價於 -w

 

分組

\(\):括號優先級最高 例子:echo abcabcabc | grep \(wang\)\{3\} (abc出現3次)

\1:匹配括號 從左半括號到右半括號之間的字符(注意 不是規則)

| :或者 \(a\|b\)xy 匹配 a或者b 後面跟xy axy bxy 均可以匹配

 

 

相關文章
相關標籤/搜索
本站公眾號
   歡迎關注本站公眾號,獲取更多信息