正規表示式:
基本正規表示式主要用於grep,egrep,vi,sed,awk命令中進行字串匹配。符號
意義 c
匹配字母c
. 匹配任意單個字元 *
匹配前乙個字元出現零次或多次
. *匹配任意多個任意字元
匹配集合中的任意單個字元,括號中為乙個集合
[x-y]
匹配連續的字串範圍 ^
匹配字串的開頭 $
匹配字串的結尾
[^]匹配否定,對括號中的集合取反 \
匹配轉義後的字串 \
匹配前乙個字元出現n次
\匹配前乙個字元重複至少出現n次
\匹配前乙個字元重複
n~m次
\(\) 將
\(與\)之間的內容儲存在
」保留空間
」,最大儲存9個
\n 通過
\1至\9呼叫保留空間中的內容
舉例:(1) 查詢:與0:之間包含兩個字元的字串,並顯示該行
grep :..0: /etc/passwd
(2 )查詢至少包含乙個0的行
grep 00* /etc/passwd
(3) 查詢包含oot或者ost的行
grep o[os]t/etc/passwd
(4) 查詢以ro開頭的行
grep ^ro /etc/passwd
(5) 查詢以bash結尾的行
grep bash$ /etc/passwd
(6) 查詢bin/後面不跟n的行
grep bin/[^n] /etc/passwd
(7)查詢0出現一次或兩次的行
grep '0\'/etc/passwd
(8)查詢首尾均為root,其中包含任意多個root的字串,並顯示該行
grep '\(root\).*\1' /etc/passwd
(9)查詢包含以root:開頭:root結尾字序列
grep '\(root\)\(:\).*\2\1' /etc/passwd
(10)過濾檔案的空白行
grep ^$ /etc/passwd
針對例(9)給出幾個測試,希望能幫助理解。
擴充套件正規表示式:
主要用於egrep和awk命令的字串匹配符號
意義 等同於基本正規表示式的\
+ 匹配前乙個字元出現一次或多次 ?
匹配前乙個字元出現零次或一次 |
匹配邏輯或者,即匹配
|前或後的字串 ()
匹配正則集合
(1) 查詢0出現一次和兩次的行
egrep '0' /etc/passwd
(2) 查詢至少包含乙個0的行
egrep '0+' /etc/passwd
(3) 查詢包含root或者admin的行
egrep 'root|admin'/etc/passwd
以上參考了《linux運維之道》部分內容。
正規表示式詳解
正規表示式主要作用 分割 匹配 查詢 替換 正規表示式中包括的元素 1.原子 普通字元 a z a z 0 9 原子表 轉義字元 2.元字元 有特殊功能的字元 3.修正模式符 系統內建部分字元,例如 i m s u 原子 1.a z a z 0 9 最常見的字元 2.abc 用圓括號包含起來的單元符...
正規表示式詳解
正規表示式 regular expression 又稱正規表示式 規則表示式等,是電腦科學的乙個概念。正規表示式使用單個字串來描述 匹配一系列匹配某個句法規則的字串,也通常用來檢索 替換那些匹配某個模式的文字。下面從以下方面開始講述正規表示式在python中的應用。1.在python中使用,首先需要...
詳解正規表示式
c 字元c 0n 八進位制0n代表的字元 0 n 7 0nn 八進位制0nn代表的字元 0 n 7 0mnn 八進位制0mnn代表的字元 0 m 3,0 n 7 xnn 十六進製制 0xnn所代表的字元 uhhhh 十六進製制 0xhhhh所代表的字元 t製表符 n換行符 r回車符 f換頁符 a報警...