-E :開啟擴(kuò)展(Extend)的正則表達(dá)式。
-i :忽略大小寫(ignore case)。
-v :反過來(invert),只打印沒有匹配的,而匹配的反而不打印。
-n :顯示行號
-w :被匹配的文本只能是單詞,而不能是單詞中的某一部分,如文本中有l(wèi)iker,而我搜尋的只是like,就可以使用-w選項來避免匹配liker
-c :顯示總共有多少行被匹配到了,而不是顯示被匹配到的內(nèi)容,注意如果同時使用-cv選項是顯示有多少行沒有被匹配到。
-o :只顯示被模式匹配到的字符串。
--color :將匹配到的內(nèi)容以顏色高亮顯示。
-A n:顯示匹配到的字符串所在的行及其后n行,after
-B n:顯示匹配到的字符串所在的行及其前n行,before
-C n:顯示匹配到的字符串所在的行及其前后各n行,context
\btom\b “\b"中間tom代表是一個單詞
\d 表示一個數(shù)字
\d{2}-\d{8}。 這里\d后面的{2}({8})的意思是前面\d必須連續(xù)重復(fù)匹配2次(8次)。
\s 匹配任意的空白符,包括空格,制表符(Tab),換行符,中文全角空格等。
\w 匹配字母或數(shù)字或下劃線或漢字等。
. 匹配除換行符以外的任意字符
\d 匹配數(shù)字
\b 匹配單詞的開始或結(jié)束
^ 匹配字符串的開始 //^和$匹配的是行
$ 匹配字符串的結(jié)束
^\d{5,12}$ 填寫的QQ號必須為5位到12位數(shù)字
備注:"\d" 等這些字符只有在perl{正則支持的相對完整} 中能夠使用
轉(zhuǎn)義):
\字符
重復(fù)):
* 重復(fù)零次或更多次
+ 重復(fù)一次或更多次
? 重復(fù)零次或一次
{n} 重復(fù)n次
{n,} 重復(fù)n次或更多次
{n,m} 重復(fù)n到m次
cat 123.txt |grep '\bno\b'
#\b 牟定詞首 或者詞尾,上面表示只匹配no字符,多一個都不行
cat 123.txt |grep '^root.400$'
#^牟定行首,$牟定行尾,表示匹配以root開頭,以400結(jié)尾的行
echo "111222333"|grep -o 1.2
#只顯示匹配到的詞
cat /etc/passwd|grep -n -A 1 '^root.*'
#顯示root行,及下一行,還有行號,-A換成-B就是上一行,換成-C就是上下各1行。
匹配數(shù)字
echo "ABC123abc"|grep -o [0-9]|xargs
#匹配出數(shù)字,由于grep特性,顯示的數(shù)字會豎排顯示,管道送給xargs處理一下
cat cs/testfile.txt |grep -x -n test #-x只顯示完整匹配一行的,-n 加上行號效果和 sed -n '/^test$/=' 差不多
echo "2002 1945 1644 1892 1946"|grep -P '\b(20|19)[0-9]{2}\b'
#表示以20或者19開頭后面兩個字符為數(shù)字,{2}的意思是前面[0-9]必須匹配到兩次,至少匹配到的是4位數(shù),但是兩個\b牟定的詞首和詞尾所以只能的是4位數(shù)
echo "http://www.ylc520.com/"|grep -oP '.+(?=://)'
#輸出結(jié)果 http, 表示以://為定界 往前匹配,.+ 表示任意字符出現(xiàn)1次或者多次
echo "http://www.ylc520.com/"|grep -oP '(?<=://).+'
#輸出 www.ylc520.com/ ,表示以://為定界 往后匹配,.+ 表示任意字符出現(xiàn)1次或者多次
echo "http://www.ylc520.com/"|grep -oP '(?<=www.).+(?=.com)'
#輸出結(jié)果 ylc520 表示以www. 為定界往后匹配,同時以.com為定界往前匹配,.*匹配任意字符任意長度
grep -l -r 'test' cs/
#查找cs文件夾里包含'test'字符的文件。-l顯示匹配出的文件,不是字符 加-r可以查找文件夾
URL地址 https?://[-\w.]+(:\d+)?(/([\w/_.]*)?)?
完整的URL地址 https?://(\w*:\w*@)?[-\w.]+(:\d+)?(/([\w/_.]*(\?\S+)?)?)?
圖片簡單URL地址 https?://[\w/.-\\]+\.((gif)|(jpg)|(png)|(bmp))
電子郵件地址 (\w+\.)*\w+@(\w+\.)+[A-Za-z]+
IP地址 (((\d{1,2})|(1\d{2})|(2[0-4]\d)|(25[0-5]))\.){3}((\d{1,2})|(1\d{2})|(2[0-4]\d)|(25[0-5]))
HTML注釋 <!-{2,}.*?-{2,}>
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
當(dāng)前標(biāo)題:grep的使用及正則表達(dá)式-創(chuàng)新互聯(lián)
分享地址:http://m.newbst.com/article32/hjjpc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供Google、品牌網(wǎng)站制作、移動網(wǎng)站建設(shè)、網(wǎng)站建設(shè)、關(guān)鍵詞優(yōu)化、ChatGPT
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容