正則化表達(dá)式與通配符

正則化表達(dá)式與通配符

"."符號(hào)

點(diǎn)符號(hào)用于匹配除換行符之外的任意一個(gè)字符相艇。例如,r.t可以匹配rot纯陨,rut坛芽,但是不能匹配root。

例:grep 'r..t' /etc/passwd

"*"符號(hào)

"*"符號(hào)用于匹配前一個(gè)字符0次或者任意多次翼抠,比如ab*咙轩,可以匹配a、b阴颖、abb等活喊。"*"號(hào)經(jīng)常和"."號(hào)一起使用,比如”.*”代表任意長(zhǎng)度的不包含換行的字符量愧。

例如:”r.*t”代表查找包含字母r钾菊,后面緊跟任意長(zhǎng)度的字符,再跟一個(gè)字母t的行侠畔。

“\{n,m\}”符號(hào)

雖然”*”可用于重復(fù)匹配前一個(gè)字符结缚,但卻不能精確的控制匹配的重復(fù)次數(shù),使用“\{n,m\}”符號(hào)則能達(dá)到要求软棺。

“\{n\}”符號(hào)匹配前面的字符n次红竭,“\{n,\}”匹配前面的字符至少n次以上(含n次)。

“\{n,m\}”匹配前面的字符n到m次。

“^”符號(hào)

這個(gè)符號(hào)用于匹配開頭字符的行

例如:grep ‘^root’ /etc/passwd

“$”符號(hào)

用于匹配結(jié)尾字符的行

例如:grep ‘^r.*h$’ /etc/passwd

符號(hào)“^$”則代表改行為空

“[]”符號(hào)

用于匹配方括號(hào)內(nèi)出現(xiàn)的任一字符茵宪。用符號(hào)“-”作限定

例如:[A-Za-z]匹配所有的字母最冰,[^A-D]代表取反即除了字母A-D以外的字母,例如:“^1[38][0-9]\{9\}”代表手機(jī)號(hào)碼

“\”符號(hào)

為轉(zhuǎn)義符稀火。比如[ \- ]此時(shí)”\-”代表“-”暖哨,再如想打入一個(gè)點(diǎn),則\.*代表匹配任意長(zhǎng)度的點(diǎn)號(hào)凰狞。

“\<”符號(hào)和“\>”

這兩個(gè)符號(hào)分別用于界定單詞的左邊界和右邊界篇裁。

比如“\”則用于匹配以”hello”結(jié)尾的單詞。

“\<\>”則用于精確匹配任意一個(gè)字符串赡若。

例如:grep “\”

\n為換行符达布,\r為一個(gè)回車符,\t為一個(gè)制表符逾冬,\f為一個(gè)換頁符黍聂,\s為任何空白字符,\S為任何非空白字符身腻。

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

在使用這些擴(kuò)展符號(hào)前需要使用命令egrep产还。

“?”符號(hào)

“?”符號(hào)用于匹配前一個(gè)字符0次或1次,所以”ro?t”僅能匹配rot或者rt.

“+”符號(hào)

“+”符號(hào)用于匹配前一個(gè)字符1次以上嘀趟,所以”ro+t”就可以匹配rot脐区、root.

“|”符號(hào)

“|”符號(hào)是”或”的意思,即多種可能的羅列

例如:^0[0-9]\{2\}-[0-9]\{8\} | ^0[0-9]\{3\}-[0-9]\{8\}

“|”符號(hào)

“()”符號(hào)通常和”|”符號(hào)連用去件,用于枚舉一系列可替換的字符坡椒。

例如021-88888888和0511 88888888可以使用代碼:^0[0-9]\{2,3\}(-| )[0-9]\{8\}

再如:h(ar|oo|ol)d可以匹配hard, hold或hood

特殊的POSIX字符,示例如下:

grep支持一類特殊的POSIX字符:

[:alnum:]文字?jǐn)?shù)字字符

[:alpha:]文字字符

[:digit:]數(shù)字字符

[:graph:]非空字符(非空格尤溜、控制字符)

[:lower:]小寫字符

[:cntrl:]控制字符

[:print:]非空字符(包括空格)

[:punct:]標(biāo)點(diǎn)符號(hào)

[:space:]所有空白字符(新行,空格汗唱,制表符)

[:upper:]大寫字符

[:xdigit:]十六進(jìn)制數(shù)字(0-9,a-f,A-F)

例如:搜索以數(shù)字開頭的行:grep ^[[:digit:]] zzbds.txt

通配符

“*”符號(hào)

“*”符號(hào)代表0個(gè)或多個(gè)字符宫莱。比如*.doc代表所有以.doc結(jié)尾的文件。A*.doc代表以字母A開頭的doc文件哩罪。

“授霸?”符號(hào)

“?”符號(hào)代表的是任意的一個(gè)字符际插,例如A?.doc代表的是以字母A開頭碘耳,文件名第二個(gè)字母為任意字母的doc文件。

“{}”符號(hào)

可以匹配所有括號(hào)內(nèi)包含的以逗號(hào)隔開的字符框弛。

例如:ls –l {A,B,C}.doc和命令ls –l [A-C].doc列出所有以字母A,B,C開頭.doc結(jié)尾的文件

嵌套功能:ls –l {[A-Z]*.doc,[0-9]??.txt}

“^”符號(hào)和“!”符號(hào)

這兩個(gè)符號(hào)往往和”[]”一起使用辛辨,當(dāng)出現(xiàn)在”[]”中的時(shí)候,代表取反。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末斗搞,一起剝皮案震驚了整個(gè)濱河市指攒,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌僻焚,老刑警劉巖允悦,帶你破解...
    沈念sama閱讀 219,110評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異虑啤,居然都是意外死亡隙弛,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,443評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門狞山,熙熙樓的掌柜王于貴愁眉苦臉地迎上來全闷,“玉大人,你說我怎么就攤上這事铣墨∈衣瘢” “怎么了?”我有些...
    開封第一講書人閱讀 165,474評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵伊约,是天一觀的道長(zhǎng)姚淆。 經(jīng)常有香客問我,道長(zhǎng)屡律,這世上最難降的妖魔是什么腌逢? 我笑而不...
    開封第一講書人閱讀 58,881評(píng)論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮超埋,結(jié)果婚禮上搏讶,老公的妹妹穿的比我還像新娘。我一直安慰自己霍殴,他們只是感情好媒惕,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,902評(píng)論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著来庭,像睡著了一般妒蔚。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上月弛,一...
    開封第一講書人閱讀 51,698評(píng)論 1 305
  • 那天肴盏,我揣著相機(jī)與錄音,去河邊找鬼帽衙。 笑死菜皂,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的厉萝。 我是一名探鬼主播恍飘,決...
    沈念sama閱讀 40,418評(píng)論 3 419
  • 文/蒼蘭香墨 我猛地睜開眼榨崩,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了常侣?” 一聲冷哼從身側(cè)響起蜡饵,我...
    開封第一講書人閱讀 39,332評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎胳施,沒想到半個(gè)月后溯祸,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,796評(píng)論 1 316
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡舞肆,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,968評(píng)論 3 337
  • 正文 我和宋清朗相戀三年焦辅,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片椿胯。...
    茶點(diǎn)故事閱讀 40,110評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡筷登,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出哩盲,到底是詐尸還是另有隱情前方,我是刑警寧澤,帶...
    沈念sama閱讀 35,792評(píng)論 5 346
  • 正文 年R本政府宣布廉油,位于F島的核電站惠险,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏抒线。R本人自食惡果不足惜班巩,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,455評(píng)論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望嘶炭。 院中可真熱鬧抱慌,春花似錦、人聲如沸眨猎。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,003評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽睡陪。三九已至单匣,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間宝穗,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,130評(píng)論 1 272
  • 我被黑心中介騙來泰國(guó)打工码秉, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留逮矛,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,348評(píng)論 3 373
  • 正文 我出身青樓转砖,卻偏偏與公主長(zhǎng)得像须鼎,于是被迫代替她去往敵國(guó)和親鲸伴。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,047評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • 正則表達(dá)式到底是什么東西晋控?字符是計(jì)算機(jī)軟件處理文字時(shí)最基本的單位汞窗,可能是字母,數(shù)字赡译,標(biāo)點(diǎn)符號(hào)仲吏,空格,換行符蝌焚,漢字等...
    獅子挽歌閱讀 2,147評(píng)論 0 9
  • 注:本篇文章只為方便查看裹唆,特此保留,如有冒犯只洒,敬請(qǐng)諒解P碚省!毕谴! 本文目標(biāo) 30分鐘內(nèi)讓你明白正則表達(dá)式是什么成畦,并對(duì)它...
    阿杰Alex閱讀 1,483評(píng)論 0 10
  • 一、什么是正則表達(dá)式 正則表達(dá)式涝开,又稱正規(guī)表示法循帐,是對(duì)字符串操作的一種邏輯公式。正則表達(dá)式可以檢測(cè)給定的字符串是否...
    木馬不在轉(zhuǎn)閱讀 2,011評(píng)論 8 21
  • 基礎(chǔ)命令 主要的命令和快捷鍵 Linux系統(tǒng)命令由三部分組成:cmd + [options]+[operation...
    485b1aca799e閱讀 1,099評(píng)論 0 0
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理忠寻,服務(wù)發(fā)現(xiàn)惧浴,斷路器,智...
    卡卡羅2017閱讀 134,662評(píng)論 18 139