日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

关于grep,egrep正则表达式的常用用法

發(fā)布時(shí)間:2025/3/8 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 关于grep,egrep正则表达式的常用用法 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

正則表達(dá)式是一類字符所書寫的模式(pattern)

元字符:不表示字符本身的意義,而用于額外功能性的描述;而如果在這些特定的字符前加/這個(gè)符號(hào)那么這些字符就表示原有的意思。



正則表達(dá)式:基本正則表達(dá)式和擴(kuò)展正則表達(dá)式

grep [opinions] 'pattern' FILENAME

"pattern"和'pattern'單雙引號(hào)的區(qū)別:單雙引號(hào)就是對(duì)變量引用的區(qū)別""能引號(hào)變量直,''不引用

grep默認(rèn)支持基本正則表達(dá)式

首先先講解基本正則表達(dá)式的pattern的一些常用用法

首先定義alias grep="grep --color=auto"

^:錨定行首的符合條件的內(nèi)容,用法格式“^pattern”;

例:

[root@localhost ~]# grep "^root" /etc/passwd

root:x:0:0:root:/root:/bin/bash


$: 錨定行尾的符合條件的內(nèi)容,用法格式“pattern$”;

^$: 空白行

.: 匹配任意單個(gè)字符,就像通配符里面的?用法

*:匹配緊挨在其前面的字符任意次;這個(gè)與通配符里面的*有區(qū)別。通配符的*=正則表達(dá)式的.*

a*b: ab, aab, acb(整個(gè)不匹配,但會(huì)顯示出來(lái)), b

.*: 匹配任意長(zhǎng)度的任意字符

[]:匹配指定范圍內(nèi)的任意單個(gè)字符

[^]:匹配指定范圍外的任意單個(gè)字符,下面還有個(gè)關(guān)于grep的選項(xiàng)-v也是取反。但兩者是有區(qū)別的。

1:[^]后面要接字符 -v可以接空白行(^$),[^]經(jīng)試驗(yàn)不行要出錯(cuò)

2:[^]接單個(gè)字符后,比如有一串字符abcde,[^a]后其仍然要顯示,而-v不顯示。

[a-z], [A-Z], [0-9]

[:lower:] a-z

[:upper:] A-Z

[:digit:]所有數(shù)字

[:alpha:]所有字母

[:alnum:]所有字母和數(shù)字

[:space:]

[:punct:]所有符號(hào)


grep "r[0-9].*h" /etc/passwd

表示顯示以r開(kāi)頭后面緊跟一個(gè)數(shù)字中間任意長(zhǎng)的字符串再以h結(jié)尾,值得一提的是如果一個(gè)字符串像這樣:adr1sdahdfadh它會(huì)顯示:adr1sdahdfadh而非adr1sdahdfadh。這是貪婪模式(盡可能長(zhǎng)地去匹配符合模式的內(nèi)容)

\?: 匹配緊挨在其前面的字符0次或1次;

a\?b(表示b前面有0或1個(gè)a能全部匹配): ab, aab, acb, b

\{m,n\}: 匹配其前面的字符至少m次,至多n次;

\{0,n\}: 至多n次;0-n次;(n要寫個(gè)數(shù)字)

\{m,\}:至少m次

\{m\}: 精確匹配m次;

a\{1,3\}b: b, ab, aab, aaab, aaaaaab, acb

grep "[bB].\{2,5\}[tT]": Boot, B123T, bxy12T

\<: 錨定詞首,用法格式:\<pattern

\b: \bpattern

\>: 錨定詞尾,用法格式:pattern\>

\b: pattern\b

\<pattern\>:錨定單詞

grep "\<root\>" /etc/passwd


\(\): 分組,用法格式: \(pattern\)

\(ab\)\{1,3\}: ab, aab, abb, abab, ababab,

ab任意字符ab:ab.*ab

a.b任意字符a.b: \(a.b\).*\1


grep的選項(xiàng):

--color=auto

export GREP_COLOR='01;36'

-v: 反向選取,只顯示不符合模式的行;

前面已經(jīng)提到過(guò):grep -v "^$" /etc/rc.d/rc.sysinit 不顯示空白行

-o: 只顯示被模式匹配到的字串,而不是整個(gè)行;

-i: 不區(qū)分字符大小寫;


-A #:顯示匹配到的行時(shí),順帶顯示其后面的#個(gè)行;

-A 2

-B #:前面的#行;

-C #:前后的#行;


-E: 使用擴(kuò)展的正則表達(dá)式

grep -E = egrep

擴(kuò)展正則表達(dá)式:

.: 任意單個(gè)字符

[]: 匹配任意范圍內(nèi)單個(gè)字符

a|b: 二選一;

例:egrep "[ab]" = egrep "a|b"

[^]:匹配指定外的任意單個(gè)字符

*:

+: 匹配其前面的字符至少1次;

?: 0次或一次

{m,n}: 至少m次,至多n次;

():分組,支持引用\1, \2;

\<

\>

^

$


grep -E = egrep


grep "(c|C)at" /root/test.txt

cat, Cat

c, Cat




練習(xí):

顯示/etc/rc.d/rc.sysinit中以#開(kāi)頭,且后面跟一個(gè)或多個(gè)空白字符,而后又跟了任意非空白字符的行;

[[:space:]], [^[:space:]]


顯示/proc/meminfo文件中以不區(qū)分大小的s開(kāi)頭的行;

# grep "^[Ss]" /proc/meminfo


顯示/etc/rc.d/rc.sysinit中符合形為“任意單個(gè)字符n任意字符任意單個(gè)字符n”模式的行;即任意單個(gè)字符后面跟了個(gè)n,n后面有任意長(zhǎng)度的任意字符,而后是任意單個(gè)字符后面跟了個(gè)n;


.n.*.n


顯示/etc/rc.d/rc.sysinit中符合形為“任意單個(gè)字符n任意字符任意單個(gè)字符n”模式的行;即任意單個(gè)字符后面跟了個(gè)n,n后面有任意長(zhǎng)度的任意字符,而后是任意單個(gè)字符后面跟了個(gè)n,但后面的n之前的字符要與前面的n之前的字符相同;

\(.n\).*\1


顯示/boot/grub/grub.conf文件中以一個(gè)或多個(gè)空白字符開(kāi)頭的行;

^[[:space:]]\{1,\}


轉(zhuǎn)載于:https://blog.51cto.com/nickzhao/1316455

總結(jié)

以上是生活随笔為你收集整理的关于grep,egrep正则表达式的常用用法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 精品一级| 久久久国产一区二区三区 | 波多野结衣免费在线视频 | 亚洲第一免费网站 | 丁香七月婷婷 | 亚洲成人免费 | 国产一区二区三区黄 | xxxx69视频 | 久久精品一区二区三区黑人印度 | 亚洲乱码国产乱码精品精软件 | 亚洲成人黄色网 | 午夜有码 | 日本乱子伦xxxx | 午夜一区二区三区在线 | 亚洲中文字幕无码专区 | 欧美极品一区 | 国产精品久久久久久久久久久久久久久久久 | 观看毛片| 欧美乱码精品 | 国产精品6| 亚洲在线观看免费 | 国产在线xxx| 三浦理惠子av在线播放 | 国产精品黄色大片 | 香蕉视频色 | 国产精品亚洲天堂 | 韩漫动漫免费大全在线观看 | 国产美女黄网站 | 波多野结衣乳巨码无在线 | 欧美夫妻性生活视频 | 国产69精品久久久久久久 | 黄色aa网站 | 毛片91 | 小早川怜子一区二区三区 | 日韩视频免费在线 | 成人高清视频免费观看 | 五月激情开心网 | 99精品影视 | 美女搞黄在线观看 | 免费无码av片在线观看 | 99一区二区 | 国内自拍视频在线播放 | 国产一级二级三级在线 | 精品熟妇视频一区二区三区 | 国产午夜成人久久无码一区二区 | 美女福利视频 | 91成人国产 | 久久久精品欧美 | 琪琪在线视频 | 国产精品久久久久久久 | 亚洲国产精品免费在线观看 | 重口变态虐黄网站 | 免费在线看a | 91香蕉嫩草 | 天天做天天干 | 中国浓毛少妇毛茸茸 | 在线欧美 | 99资源站 | 成人在线免费播放视频 | 国产精品第七页 | 日韩电影一区二区在线观看 | 国产一区二区麻豆 | tube极品少妇videos | 日本精品一区二区三区四区的功能 | 91福利在线免费观看 | 亚洲wwww | 在线免费精品 | 欧美成人精品一区二区男人看 | 亚洲一在线| 国产亚洲天堂 | youjizz.com国产 | 免费成人看片 | 熟女丰满老熟女熟妇 | 视频一区二区中文字幕 | 精品欧美一区二区三区免费观看 | 日韩av一区二区在线观看 | 好好热视频 | 久久久精品国产sm调教 | 久久丝袜美腿 | 麻豆 国产 | 欧美高清视频在线观看 | 精品三级在线 | 免费日本在线 | 国内精品偷拍 | www婷婷 | 亚洲欧美综合久久 | 国产不卡在线观看 | 福利视频在线看 | 狠狠躁18三区二区一区传媒剧情 | 18禁一区二区 | 夜夜欢视频 | 日本午夜一区 | 日韩激情小视频 | 搡老熟女老女人一区二区 | 五月天综合婷婷 | 欧美一级鲁丝片 | 蜜桃视频免费网站 | 熟女人妻在线视频 | 国产91精品久久久 |