新聞中心
一、前言
我們在做接口自動化的時候,處理接口依賴的相關數(shù)據(jù)時,通常會使用正則表達式來進行提取相關的數(shù)據(jù)。

創(chuàng)新互聯(lián)是一家集網(wǎng)站建設,大荔企業(yè)網(wǎng)站建設,大荔品牌網(wǎng)站建設,網(wǎng)站定制,大荔網(wǎng)站建設報價,網(wǎng)絡營銷,網(wǎng)絡優(yōu)化,大荔網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強企業(yè)競爭力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學習、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網(wǎng)站。
今天在這邊和大家聊聊如何在python中使用正則表達式。
在python使用正則表達式,可以使用官方庫re來實現(xiàn)。
二、re模塊的使用
在python中使用正則表達式,需要用到re模塊來進行操作,這邊給大家介紹幾個re模塊中常用的方法。
01 re.match函數(shù)
- 參數(shù)說明:接收兩個參數(shù)
① 第一個是匹配的規(guī)則
② 第二個是匹配的目標字符串
re.match嘗試從字符串的起始位置匹配1一個模式。
匹配成功,返回的是一個匹配對象(這個對象包含了我們匹配的信息)。
如果不是起始位置匹配成功的話,match()返回的就是空。
案例:
02 re.search方法
- 參數(shù)說明:接收兩個參數(shù)
① 第一個是匹配的規(guī)則
② 第二個是匹配的目標字符串
re.search 掃描整個字符串并返回第一個成功的匹配。
案例:
- re.match與re.search的區(qū)別:
① re.match從字符串的開始位置進行匹配,如果字符串開始不符合正則表達式,則匹配失敗,函數(shù)返回空;
② 而re.search匹配整個字符串,直到找到一個匹配成功的則進行返回,如果整個字符串中都沒有找到匹配成功的,則返回空
03 findall方法
- 參數(shù)說明:接收兩個參數(shù)
① 第一個是匹配的規(guī)則
② 第二個是匹配的目標字符串
在字符串中找到正則表達式所匹配的所有子串,并返回一個列表,如果沒有找到匹配的,則返回空列表。
案例:
注意:match和search是匹配一個結果,findall 匹配處所有符合規(guī)則的結果。
04 sub方法
替換字符串中的某些字符,可以用正則表達式來匹配被選子串。
- 參數(shù):
pattern:匹配的規(guī)則;
repl:匹配之后替換的新內容;
string:需要按規(guī)則替換的字符串;
count:替換的次數(shù),可以不傳參,默認替換所有符合規(guī)則的。
案例:
05 貪婪模式說明
- 貪婪模式:Python里數(shù)量詞默認是貪婪的,總是嘗試匹配盡可能多的字符;
如下案例:
有一個字符串s,我們需要在字符串中匹配3個以上的數(shù)字,字符串中數(shù)字有8個,貪婪模式會盡可能匹配更多字符,3個以上,8個也是3個以上,那么這里匹配的結果就是8個數(shù)字。
- 非貪婪模式:總是嘗試匹配盡可能少的字符,在"*","?","+","{m,n}",{m,}后面加上?,可以關閉貪婪模式
關閉貪婪模式之后,盡可能獲取更少的。
如下,只獲取到最前面的3個數(shù)值(規(guī)則時至少3個,非貪婪就是匹配最前面符合規(guī)則的3個數(shù)組)
關于re模塊,更多的使用方法,本文不做過多的介紹,大家自行研究,謝謝!
下面附上正則表達式的基本的匹配供大家參考
三、正則表達式語法
01 表示單字符
- 單字符:即表示一個單獨的字符,比如匹配數(shù)字用\d ,匹配非數(shù)字使用\D。
具體規(guī)則如下:
02 表示數(shù)量
如果要匹配某個字符多次,就可以在字符后面加上數(shù)量進行表示。
具體規(guī)則如下:
03 表示邊界
用來表示字符串或者單詞的邊界 如字符串開頭,單詞開頭等
04 匹配分組
對匹配的內容做分組處理
文章標題:技能大放送:Python中正則表達式的使用
轉載來于:http://m.fisionsoft.com.cn/article/djchidj.html


咨詢
建站咨詢
