正則

介紹

1: 在開發(fā)中會(huì)有大量的字符串處理工作硅堆,其中經(jīng)常會(huì)涉及到字符串格式的校驗(yàn)。

  • 正則表達(dá)式概述
    正則表達(dá)式昭灵,又稱正規(guī)表示式吠裆、正規(guī)表示法、正規(guī)表達(dá)式烂完、規(guī)則表達(dá)式试疙、常規(guī)表示法(英語(yǔ):Regular Expression,在代碼中常簡(jiǎn)寫為regex抠蚣、regexp或RE)祝旷,是計(jì)算機(jī)科學(xué)的一個(gè)概念。正則表達(dá)式使用單個(gè)字符串來(lái)描述嘶窄、匹配一系列匹配某個(gè)句法規(guī)則的字符串怀跛。在很多文本編輯器里,正則表達(dá)式通常被用來(lái)檢索柄冲、替換那些匹配某個(gè)模式的文本吻谋。
    Regular Expression的“Regular”一般被譯為“正則”、“正規(guī)”现横、“常規(guī)”漓拾。此處的“Regular”即是“規(guī)則”、“規(guī)律”的意思长赞,Regular Expression即“描述某種規(guī)則的表達(dá)式”之意晦攒。

模塊操作

在Python中需要通過(guò)正則表達(dá)式對(duì)字符串進(jìn)行匹配的時(shí)候,可以使用一個(gè)模塊得哆,名字為re

  • re模塊的使用過(guò)程
    image.png
  • 說(shuō)明

re.match() 能夠匹配出以xxx開頭的字符串

表示字符

  • 正則表達(dá)式的單字符匹配
字符 功能
. 匹配任意1個(gè)字符(\n)
[ ] 匹配[ ]中列舉的字符
\d 匹配數(shù)字,即0-9
\D 匹配非數(shù)字,即不是數(shù)字
\s 匹配空白哟旗,即空格贩据,tab鍵
\S 匹配非空白
\w 匹配單詞字符栋操,即a-z,A-Z饱亮,0-9矾芙,_
\W 匹配非單詞字符
  • 實(shí)例


    image.png

原始字符串

  • 說(shuō)明
    Python中字符串前面加上 r 表示原生字符串,
    與大多數(shù)編程語(yǔ)言相同近上,正則表達(dá)式里使用""作為轉(zhuǎn)義字符剔宪,這就可能造成反斜杠困擾。假如你需要匹配文本中的字符""壹无,那么使用編程語(yǔ)言表示的正則表達(dá)式里將需要4個(gè)反斜杠"\":前兩個(gè)和后兩個(gè)分別用于在編程語(yǔ)言里轉(zhuǎn)義成反斜杠葱绒,轉(zhuǎn)換成兩個(gè)反斜杠后再在正則表達(dá)式里轉(zhuǎn)義成一個(gè)反斜杠。
    Python里的原生字符串很好地解決了這個(gè)問(wèn)題斗锭,有了原始字符串地淀,你再也不用擔(dān)心是不是漏寫了反斜杠,寫出來(lái)的表達(dá)式也更直觀岖是。

表示數(shù)量

*
匹配前一個(gè)字符出現(xiàn)0次或者無(wú)限次帮毁,即可有可無(wú)
+
匹配前一個(gè)字符出現(xiàn)1次或者無(wú)限次,即至少有1次
?
匹配前一個(gè)字符出現(xiàn)1次或者0次豺撑,即要么有1次烈疚,要么沒有
{m}
匹配前一個(gè)字符出現(xiàn)m次
{m,}
匹配前一個(gè)字符至少出現(xiàn)m次
{m,n}
匹配前一個(gè)字符出現(xiàn)從m到n次

表示邊境

^
匹配字符串開頭
$
匹配字符串結(jié)尾
\b
匹配一個(gè)單詞的邊界
\B
匹配非單詞邊界

匹配分組

|
匹配左右任意一個(gè)表達(dá)式
(ab)
將括號(hào)中字符作為一個(gè)分組
\num
引用分組num匹配到的字符串
(?P<name>)
分組起別名
(?P=name)
引用別名為name分組匹配到的字符串

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市聪轿,隨后出現(xiàn)的幾起案子爷肝,更是在濱河造成了極大的恐慌,老刑警劉巖屹电,帶你破解...
    沈念sama閱讀 222,464評(píng)論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件阶剑,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡危号,警方通過(guò)查閱死者的電腦和手機(jī)牧愁,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,033評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)外莲,“玉大人猪半,你說(shuō)我怎么就攤上這事⊥迪撸” “怎么了磨确?”我有些...
    開封第一講書人閱讀 169,078評(píng)論 0 362
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)声邦。 經(jīng)常有香客問(wèn)我乏奥,道長(zhǎng),這世上最難降的妖魔是什么亥曹? 我笑而不...
    開封第一講書人閱讀 59,979評(píng)論 1 299
  • 正文 為了忘掉前任邓了,我火速辦了婚禮恨诱,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘骗炉。我一直安慰自己照宝,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,001評(píng)論 6 398
  • 文/花漫 我一把揭開白布句葵。 她就那樣靜靜地躺著厕鹃,像睡著了一般。 火紅的嫁衣襯著肌膚如雪乍丈。 梳的紋絲不亂的頭發(fā)上剂碴,一...
    開封第一講書人閱讀 52,584評(píng)論 1 312
  • 那天,我揣著相機(jī)與錄音诗赌,去河邊找鬼汗茄。 笑死,一個(gè)胖子當(dāng)著我的面吹牛铭若,可吹牛的內(nèi)容都是我干的洪碳。 我是一名探鬼主播,決...
    沈念sama閱讀 41,085評(píng)論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼叼屠,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼瞳腌!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起镜雨,我...
    開封第一講書人閱讀 40,023評(píng)論 0 277
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤嫂侍,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后荚坞,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體挑宠,經(jīng)...
    沈念sama閱讀 46,555評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,626評(píng)論 3 342
  • 正文 我和宋清朗相戀三年颓影,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了各淀。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,769評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡诡挂,死狀恐怖碎浇,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情璃俗,我是刑警寧澤奴璃,帶...
    沈念sama閱讀 36,439評(píng)論 5 351
  • 正文 年R本政府宣布,位于F島的核電站城豁,受9級(jí)特大地震影響苟穆,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,115評(píng)論 3 335
  • 文/蒙蒙 一鞭缭、第九天 我趴在偏房一處隱蔽的房頂上張望剖膳。 院中可真熱鬧魏颓,春花似錦岭辣、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,601評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至叹话,卻和暖如春偷遗,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背驼壶。 一陣腳步聲響...
    開封第一講書人閱讀 33,702評(píng)論 1 274
  • 我被黑心中介騙來(lái)泰國(guó)打工氏豌, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人热凹。 一個(gè)月前我還...
    沈念sama閱讀 49,191評(píng)論 3 378
  • 正文 我出身青樓泵喘,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親般妙。 傳聞我的和親對(duì)象是個(gè)殘疾皇子纪铺,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,781評(píng)論 2 361

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