shell——正則表達式

原文鏈接:https://blog.csdn.net/CSDN_dzh/article/details/85010236
原文鏈接:https://www.jb51.net/tools/shell_regex.html

基本正則和擴展正則
正則表達式 描述 示例
\ 轉義符
^ 匹配行首
$ 匹配行尾
. 匹配除換行符\n之外的任意單個字符
[] 匹配包含在[字符]之中的任意一個字符
[^] 匹配[^字符]之外的任意一個字符
[-] 匹配[]中指定範圍內的任意一個字符
? 匹配之前的項1次或者0次
+ 匹配之前的項1次或者多次
* 匹配之前的項0次或者多次
() 匹配表達式,創建一個用於匹配的子串
{n} 匹配之前的項n次,n是可以爲0的正整數
{n,} 之前的項至少需要匹配n次
{n,m} 指定之前的項至少匹配n次,最多匹配m次,n<=m
| 交替匹配|兩邊的任意一項
元字符正則
正則表達式 描述 示例
\b 單詞邊界 \bcool\b 匹配cool,不匹配coolant
\B 非單詞邊界 cool\B 匹配coolant,不匹配cool
\d 單個數字字符 b\db 匹配b2b,不匹配bcb
\D 單個非數字字符 b\Db 匹配bcb,不匹配b2b
\w 單個單詞字符 (字母、數字與_) \w 匹配1或a,不匹配&
\W 單個非單詞字符 \W 匹配&,不匹配1或a
\n 換行符 \n 匹配一個新行
\s 單個空白字符 x\sx 匹配x x,不匹配xx
\S 單個非空白字符 x\S\x 匹配xkx,不匹配xx
\r 回車 \r 匹配回車
\t 橫向製表符 \t 匹配一個橫向製表符
\v 垂直製表符 \v 匹配一個垂直製表符
\f 換頁符 \f 匹配一個換頁符
\0 空值符
命令 描述
grep 默認不支持擴展表達式,加-E選項開啓 ERE。如果不加-E使用花括號要加轉義符{}
egrep 支持基礎和擴展表達式
awk 支持egrep所有的正則表達式
sed 默認不支持擴展表達式,加-r 選項開啓 ERE。 如果不加-r 使用花括號要加轉義符{}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章