正則表達式入門速記

最簡單的單獨匹配一個單詞涣达,如匹配blue.需要使用\b.它是元字符,代表著單詞的開頭或者結(jié)尾.只匹配一個位置.如匹配單詞blue的方法是\bblue\b.
一些元字符
  • \b匹配一個位置
  • .(這里是個點规揪,可能看不清)匹配除換行以外任意字符
  • *表示重復(fù)零次或更多次
  • \d匹配一個數(shù)字
  • \s匹配任意的空白符,如空格温峭,制表符猛铅,換行符
  • \w匹配數(shù)字,字母凤藏,漢字奸忽,還有下劃線
  • ^匹配字符串的開始,$匹配字符串的結(jié)尾

舉例
  • \ba\w*\b匹配以a開頭的單詞(有可能是abc清笨,a正則月杉,a_g_)
  • \d+匹配一個或者更多連續(xù)的數(shù)字
  • \b\w{6}\b匹配剛好6個單詞的單詞
  • ^\d{5刃跛,12}$匹配5到12位數(shù)字

重復(fù)的幾種表示方法
  • *重復(fù)零或者任意更多次
  • +重復(fù)一次或更多次
  • ?零或者一次
  • {n}重復(fù)n次
  • {n抠艾,}n或者更多次
  • {n,m}n到m次

方括號的使用[ ]
  • [aeiou]匹配任何一個元音字母
  • [.?!]匹配其中一個標點符號
  • [0-9]匹配一個數(shù)字
  • [a-z 0-9 A-Z]

反義
  • \W匹配任意非字母桨昙,非數(shù)字检号,非漢子腌歉,非下劃線的字符
  • \S匹配除了空白符的字符
  • \D匹配任意非數(shù)字的字符
  • \B匹配不是單詞開頭或結(jié)尾的位置
  • 在方括號里面使用^實現(xiàn)反義,[^a]匹配除了a以外的任意字符

分枝條件| 正則表達式里的替換指的是有幾種規(guī)則齐苛,如果滿足了其中一種規(guī)則都應(yīng)該當成匹配
  • 0\d{2}-\d{8}|0\d{3}-\d{7}匹配兩種以連字符分割的電話號碼
  • \d{5}-\d{4}|\d{5}匹配美國的郵編翘盖,5位數(shù)字或者用連字號間隔的9位數(shù)字。
之所以給出這個例子凹蜂,是要注意馍驯,使用分枝條件時,順序很重要玛痊。從左到右測試條件汰瘫,一旦滿足了某個條件,就不會去管后面的正則了擂煞。如果換成\d{5}|\d{5}-\d{4},用這個去匹配時混弥,只能匹配到5位數(shù)字,或者9位數(shù)字的前五位
后向引用

還記得前面分組用的小括號嗎对省?后向引用就是給小括號編上號蝗拿,從左到右依次為1,2...

  • \b(\w+)\b\s+\1\b這里的\1匹配前面的單詞
  • 可以給子表達式自定義名字,使用蒿涎?<name>例如哀托?<word>\w+調(diào)用的時候使用\k<word>
零寬斷言
  • (?=exp) //匹配exp前面的位置
    • \b\w+(?=ing\b)匹配以ing結(jié)尾的單詞前面的部分
  • (?<=exp) //匹配exp后面的位置
    • (?<=\bre)\w+\b //匹配以re開頭的單詞后面的部分
  • (?!exp) //匹配后面跟的不是exp的位置
    • \d{3}(?!\d) //匹配三位數(shù)字,而且三位數(shù)字后面不能是數(shù)字
  • (?<!exp) //匹配前面跟的不是exp的位置
    • (?<![a-z])\d{7}匹配前面不是小寫字母的七位數(shù)字
  • 假如想要在一串很長的數(shù)字中每三位數(shù)字間加一個逗號劳秋,可以這樣來匹配位置((?=\d)\d{3})*\b
  • 匹配以空白符間隔的數(shù)字(?<=\s)\d(?=\s)
貪婪與懶惰
  • 默認貪婪匹配萤捆,如a.*b用在aababb上的話,會匹配整個字符串
  • 想要實現(xiàn)懶惰匹配俗批,需要加上問號a.*?b這樣只會匹配aab
  • *? 重復(fù)任意次俗或,但盡可能少重復(fù)
  • +? 重復(fù)1次或更多次,但盡可能少重復(fù)
  • ?? 重復(fù)0次或1次岁忘,但盡可能少重復(fù)
  • {n,m}? 重復(fù)n到m次辛慰,但盡可能少重復(fù)
  • {n,}? 重復(fù)n次以上,但盡可能少重復(fù)
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末干像,一起剝皮案震驚了整個濱河市帅腌,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌麻汰,老刑警劉巖速客,帶你破解...
    沈念sama閱讀 218,858評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異五鲫,居然都是意外死亡溺职,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,372評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來浪耘,“玉大人乱灵,你說我怎么就攤上這事∑叱澹” “怎么了痛倚?”我有些...
    開封第一講書人閱讀 165,282評論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長澜躺。 經(jīng)常有香客問我蝉稳,道長,這世上最難降的妖魔是什么掘鄙? 我笑而不...
    開封第一講書人閱讀 58,842評論 1 295
  • 正文 為了忘掉前任颠区,我火速辦了婚禮,結(jié)果婚禮上通铲,老公的妹妹穿的比我還像新娘毕莱。我一直安慰自己,他們只是感情好颅夺,可當我...
    茶點故事閱讀 67,857評論 6 392
  • 文/花漫 我一把揭開白布朋截。 她就那樣靜靜地躺著,像睡著了一般吧黄。 火紅的嫁衣襯著肌膚如雪部服。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,679評論 1 305
  • 那天拗慨,我揣著相機與錄音廓八,去河邊找鬼。 笑死赵抢,一個胖子當著我的面吹牛剧蹂,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播烦却,決...
    沈念sama閱讀 40,406評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼宠叼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了其爵?” 一聲冷哼從身側(cè)響起冒冬,我...
    開封第一講書人閱讀 39,311評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎摩渺,沒想到半個月后简烤,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,767評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡摇幻,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,945評論 3 336
  • 正文 我和宋清朗相戀三年横侦,在試婚紗的時候發(fā)現(xiàn)自己被綠了挥萌。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,090評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡丈咐,死狀恐怖瑞眼,靈堂內(nèi)的尸體忽然破棺而出龙宏,到底是詐尸還是另有隱情棵逊,我是刑警寧澤,帶...
    沈念sama閱讀 35,785評論 5 346
  • 正文 年R本政府宣布银酗,位于F島的核電站辆影,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏黍特。R本人自食惡果不足惜蛙讥,卻給世界環(huán)境...
    茶點故事閱讀 41,420評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望灭衷。 院中可真熱鬧次慢,春花似錦、人聲如沸翔曲。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,988評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽瞳遍。三九已至闻妓,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間掠械,已是汗流浹背由缆。 一陣腳步聲響...
    開封第一講書人閱讀 33,101評論 1 271
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留猾蒂,地道東北人均唉。 一個月前我還...
    沈念sama閱讀 48,298評論 3 372
  • 正文 我出身青樓,卻偏偏與公主長得像肚菠,于是被迫代替她去往敵國和親浸卦。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,033評論 2 355

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

  • 正則表達式到底是什么東西案糙?字符是計算機軟件處理文字時最基本的單位限嫌,可能是字母,數(shù)字时捌,標點符號怒医,空格,換行符奢讨,漢字等...
    獅子挽歌閱讀 2,147評論 0 9
  • 注:本篇文章只為方便查看稚叹,特此保留,如有冒犯,敬請諒解0切洹H! 本文目標 30分鐘內(nèi)讓你明白正則表達式是什么季率,并對它...
    阿杰Alex閱讀 1,483評論 0 10
  • 轉(zhuǎn)載自正則表達式30分鐘入門教程 入門 學習正則表達式的最好方法是從例子開始野瘦,理解例子之后再自己對例子進行修改,實...
    夏天的風_song閱讀 1,718評論 0 0
  • 歡迎關(guān)注微信公眾號:全棧工廠 一 正則字符簡單介紹1.1 元字符介紹"^" :^會匹配行或者字符串的起始位置飒泻,有時...
    liqingbiubiu閱讀 2,017評論 0 0
  • 本文目標 30分鐘內(nèi)讓你明白正則表達式是什么鞭光,并對它有一些基本的了解,讓你可以在自己的程序或網(wǎng)頁里使用它泞遗。一旦入門...
    不吃飯會餓閱讀 3,764評論 0 8