正則表達式引擎git
grep [OPTIONS] PATTERN [FILE...]正則表達式
選項:spa
--color=auto:對匹配到的文本着色顯示,例如:3d
-v:顯示不能被PATTERN匹配到的,例如:先查看文檔裏內容,再經過-v來查看blog
-i:忽略字母大小寫文檔
-o:僅顯示匹配到的字符串字符串
-q:不輸出任何信息,若是想知道是否成功,能夠用 echo $? 命令來查看it
-A + 數字 :顯示匹配到的行及後n行grep
-B + 數字:顯示匹配到的行及前n行im
-C + 數字:顯示匹配到的行及先後各n行。例如:
基本正則表達式元字符
字符匹配
. :匹配任何單個字符
[ ]:匹配指定範圍內任意單個字符,例如:[0-9]匹配任意一個數字
[^]:匹配指定範圍外的任意單個字符,例如:[^0-9]匹配任意一個非數字
[:digit:]:任意數字
[:lower:]:任意小寫字母
[:upper:]:任意大寫字母
[:alpha:]:任意字母
[:alnum:]:任意數字或字母
[:punct:]:任意標點符號
[:space:]:空格
匹配次數:用在要指定次數的字符後面,意思是前面這個字符出現的次數
* :匹配任意個字符,例如:x*y能夠表示:xaaay,xay,x12y等
.*:匹配任意長度的任意字符
\?:匹配前面字符0次或1次
\+:匹配前面字符1次或屢次
\{m\}:匹配前面字符m次
\{m,n\}:匹配前面字符至少m次,最多n次
\{0,n\}:匹配前面字符最多n次
\{m,\}:匹配前面字符最少m次
位置錨定:
^:行首錨定,用於最左側
$:行尾錨定,用於最右側
因此,^$表明,空行
^PATTERN$:匹配整行
\<或\b:詞首錨定,用於單詞模式的左側
\>或\b:詞尾錨定,用於單詞模式的右側
\<PATTERN\>:匹配整個單詞
分組:
\(\):將一個或多個字符捆綁在一塊兒,當作一個總體處理,例如:\(xy\)*ab能夠當作xyab,xyxyab,xyxyxyab等