正則表達式詳細用法

grep命令:
文本過濾(按行過濾)
參數
? ? ? ? ? ? ? ? -v 取反
? ? ? ? ? ? ? ? -i 忽略大小寫
? ? ? ? ? ? ? ? -n 顯示行號
? ? ? ? ? ? ? ? -c 統計匹配行數
? ? ? ? ? ? ? ? -q 靜默執行(不顯示執行結果)
? ? ? ? ? ? ? ? -o 僅顯示搜索到的字符串
? ? ? ? ? ? ? ? -A #(數字) 包含關鍵字的后續幾行
? ? ? ? ? ? ? ? -B #(數字) 包含關鍵字的前面幾行
? ? ? ? ? ? ? ? -C #(數字) 包含關鍵字的前后幾行
? ? ? ? ? ? ? ? -w 匹配整個單詞
? ? ? ? ? ? ? ? -E 相當于fgrep
正則表達式
REGEXP匹配字符串
? ? ?正則表達式元字符
? ? ? ? ? ? ? ? \ 轉義字符
? ? ? ? ? ? ? ? . 匹配任意單個字符
? ? ? ? ? ? ? ? [] 匹配指定范圍外的任意單個字符
? ? ? ? ? ? ? ? [^] 匹配除了[]內單一字符
? ? ? ? ? ? ? ? [:alnum:] 字母和數字
? ? ? ? ? ? ? ? [:alpha:]A-Z,a-z 代表任何英文大小寫字符
? ? ? ? ? ? ? ? [:upper:]A-Z 大寫字母
? ? ? ? ? ? ? ? [:lower:]a-z 小寫字母
? ? ? ? ? ? ? ? [:blank:] 空白字符
? ? ? ? ? ? ? ? [:space:] 水平和垂直的空白字符
? ? ? ? ? ? ? ? [:cntrl:] 不可打印的控制字符(退格,刪除,警鈴)
? ? ? ? ? ? ? ? [:digit:] 十進制數字
? ? ? ? ? ? ? ? [:xdigit:] 十六進制數字
? ? ? ? ? ? ? ? [:graph:] 可打印的非空白字符
? ? ? ? ? ? ? ? [:print:] 可打印的空白字符
? ? ? ? ? ? ? ? [:punct:] 標點符號
? ? ?正則表達式位置錨定:定位出現的位置
? ? ? ? ? ? ? ? ^ 行首錨定,用于模式的最左側
? ? ? ? ? ? ? ? $ 行尾錨定,用于模式的最右側
? ? ? ? ? ? ? ? ^PATTERN$ 用于模式匹配整行
? ? ? ? ? ? ? ? ^$空行 空行
? ? ? ? ? ? ? ? ^[[:space;]]*$ 空白行
? ? ? ? ? ? ? ? \<或\b 詞首錨定,用于單詞模式的左側
? ? ? ? ? ? ? ? \>或\b 詞尾錨定,用于單詞模式的右側
? ? ? ? ? ? ? ? \<PATTERN\> 匹配整個單詞
? ? ?正則表達式分組
? ? ? ? ? ? ? ? \(\)將一個或多個字符捆綁在一起,當作一個整體進行處理,如\(root\)\+
? ? ? ? ? ? ? ? 分組括號中的模式匹配到的內容會被正則表達式引擎記錄于內部的變量中,
? ? ? ? ? ? ? ? 這些變量的命名方式為:\1,\2,\3,..
? ? ? ? ? ? ? ? \1 表示從左側起第一個左括號以及為止匹配右括號之間的模式所匹配到 的字符
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 示例: \(string1\+\(string2\)*\)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? \1 : string1\+\(string2\)*
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?\2 : string2
? ? ? ? ? ? ? ? 后向引用:引用前面的分組括號中模式所匹配字符,而非模式本身
? ? ? ? ? ? ? ? 或者\|
? ? ? ? ? ? ? ? 示例 : a\|b: a或b C\|cat: C或cat \(C\|c\)at:Cat或cat
? ? ?正則表達式次數匹配
? ? ? ? ? ? ? ? .*: 匹配前面字符任意次
? ? ? ? ? ? ? ? \?: 0或1次
? ? ? ? ? ? ? ? \+: 1次或多次
? ? ? ? ? ? ?? ?\{n\}: 匹配前面的字符n次
? ? ? ? ? ? ? ? \{m,n\} 匹配前面的字符至少m次,至多n次
? ? ? ? ? ? ? ? \{,n\} 匹配前面的字符至多n次
? ? ? ? ? ? ? ? \{n,\} 匹配前面的字符至少n次
? ? ? ? ? ? ? ? egrep及擴展的正則表達式
? ? ? ? ? ? ? ? egrep命令
? ? ? ? ? ? ? ? egrep=grep-E
擴展正則表達式
? ? ?擴展正則表達式元字符
? ? ? ? ? ? ? ? . 匹配任意單個字符
? ? ? ? ? ? ? ? [] 匹配指定范圍外的任意單個字符
? ? ? ? ? ? ? ? [^] 字母和數字
? ? ? ? ? ? ? ? 擴展正則表達式位置錨定
? ? ? ? ? ? ? ? ^ 行首錨定,用于模式的最左側
? ? ? ? ? ? ? ? $ 行尾錨定,用于模式的最右側
? ? ? ? ? ? ? ? \<或\b 詞首錨定,用于單詞模式的左側
? ? ? ? ? ? ? ? \>或\b 詞尾錨定,用于單詞模式的右側
? ? ?擴展正則表達式分組
? ? ? ? ? ? ? ? ()
? ? ? ? ? ? ? ? 后向引用:\1,\2,…
? ? ? ? ? ? ? ? 例 : a|b: a或b C|cat: C或cat (C|c)at:Cat或cat
? ? ?擴展正則表達式次數匹配
? ? ? ? ? ? ? ? *: 匹配前面字符任意次
? ? ? ? ? ? ? ? ?: 0或1次
? ? ? ? ? ? ? ? +: 1次或多次
? ? ? ? ? ? ? ? {m}: 匹配m次
? ? ? ? ? ? ? ? {m,n}: 至少m次,至多n次

本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/95392

(0)
簡單不簡單簡單不簡單
上一篇 2018-04-08
下一篇 2018-04-08

相關推薦

  • 磁盤管理(二)

    RAID

    2018-04-26
  • linux一周小結

    計算機基礎,linux基礎命令,文件管理

    2018-04-01
  • 對正則表達式,VIM的基本命令的操作,SHELL編程的基本格式等的一些見解。

    第一 正則表達式,第二 VIM的具體適應,第三 shell編程的基本格式跟規范!

    Linux筆記 2018-04-08
  • N31第五周

    1、簡述rpm與yum命令的常見選項,并舉例 一.rpm包管理 CentOS系統上使用rpm命令管理程序包:安裝、卸載、升級、查詢、校驗、數據庫維護安裝 (1)安裝[install-options] rpm {-i | –install} [install-options] PACKAGE_FILE … -h:使用”#&…

    Linux筆記 2018-07-30
  • CENTOS開機流程

    開機流程 centos 5和6版本開機流程kernel==>rootfs(根文件系統)首先內核啟動,然后加載根文件系統,然后啟動init(第一個文件系統)它負責所有的程序的啟動、管理、調用、刪除等(這一切是運行在用戶空間的)。 “`kernel:進程管理內存管理網絡管理驅動程序文件系統安全功能 rootfs:glibc“` 庫:…

    Linux筆記 2018-05-13
  • Apache介紹及常用配置

    Apache是世界使用排名第一的Web服務器軟件。它可以運行在幾乎所有廣泛使用的計算機平臺上,由于其跨平臺和安全性被廣泛使用,是最流行的Web服務器端軟件之一。

    2018-06-21
欧美性久久久久