日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

一文秒懂python正則表達(dá)式常用函數(shù)

瀏覽:24日期:2022-08-03 13:45:21

導(dǎo)讀: 正則表達(dá)式是處理字符串類型的'核武器',不僅速度快,而且功能強(qiáng)大。本文不過多展開正則表達(dá)式相關(guān)語法,僅簡要 介紹 python中正則表達(dá)式常用函數(shù)及其使用方 法,以作快速查詢?yōu)g覽。

一文秒懂python正則表達(dá)式常用函數(shù)

01 Re概覽

Re模塊是python的內(nèi)置模塊,提供了正則表達(dá)式在python中的所有用法,默認(rèn)安裝位置在python根目錄下的Lib文件夾(如 ..PythonPython37Lib)。主要提供了3大類字符串操作方法:

字符查找/匹配 字符替換 字符分割

由于是面向字符串類型的模塊,就不得不提到字符串編碼類型。re模塊中,模式串和搜索串既可以是 Unicode 字符串 (常用str類型) ,也可以是8位字節(jié)串 (bytes,2位16進(jìn)制數(shù)字,例如xe5) , 但要求二者必須是同類型字符串。

02 字符串查找/匹配

預(yù)編譯:compile

在介紹查找和匹配函數(shù)前,首先需要知道re的compile函數(shù),該函數(shù)可以將一個(gè)模式串編譯成正則表達(dá)式類型,以便后續(xù)快速匹配和復(fù)用

import repattern = re.compile(r’[a-z]{2,5}’)type(pattern) #re.Pattern

此例創(chuàng)建了一個(gè)正則表達(dá)式式對象 (re.pattern) ,命名為pattern,用于匹配2-5位小寫字母的模式串。后續(xù)在使用其他正則表達(dá)式函數(shù)時(shí),即可使用pattern進(jìn)行方法調(diào)用。

匹配:match

match函數(shù)用于從文本串的起始位置開始匹配,若匹配成功,則返回相應(yīng)的匹配對象,此時(shí)可調(diào)用group()方法返回匹配結(jié)果,也可用span()方法返回匹配起止下標(biāo)區(qū)間;否則返回None

import repattern = re.compile(r’[a-z]{2,5}’)text1 = ’this is a re test’res = pattern.match(text1)print(res) #<re.Match object; span=(0, 4), match=’this’>if res: print(res.group()) #this print(res.span()) #(0, 4)text2 = ’是的, this is a re test’print(pattern.match(text2))#None

match函數(shù)還有一個(gè)變形函數(shù)fullmatch,當(dāng)且僅當(dāng)模式串與文本串剛好全部匹配時(shí),返回一個(gè)匹配對象,否則返回None

搜索:search

match只提供了從文本串起始位置匹配的結(jié)果,如果想從任意位置匹配,則可調(diào)用search方法,與match方法類似,當(dāng)任意位置匹配成功,則立即返回一個(gè)匹配對象,也可調(diào)用span()方法獲取起止區(qū)間、調(diào)用group方法獲得匹配文本串

import repattern = re.compile(r’s[a-z]{2}’)text1 = ’this is a re test’res = pattern.search(text1)print(res) #<re.Match object; span=(4, 7), match=’ is’>if res: print(res.group()) #is print(res.span()) #(4, 7)pattern2 = re.compile(r’s[a-z]{5}’)text2 = ’是的,this is a re test’print(pattern2.search(text2))#None

match和search均用于匹配單個(gè)結(jié)果,唯一區(qū)別在于前者是從起始位置開始匹配,而后者從任意位置匹配,匹配成功則返回一個(gè)match對象。

全搜索:findall/finditer

幾乎是最常用的正則表達(dá)式函數(shù),用于尋找所有匹配的結(jié)果,例如在爬蟲信息提取中,可非常方便地提取所有匹配字段

import repattern = re.compile(r’s[a-z]{2,5}’)text1 = ’this is a re test’res = pattern.findall(text1)print(res) #[’ is’, ’ re’, ’ test’]

findall返回的是一個(gè)列表對象類型,當(dāng)無匹配對象時(shí),返回一個(gè)空列表。為了避免因同時(shí)返回大量匹配結(jié)果占用過多內(nèi)存,可以調(diào)用finditer函數(shù)返回一個(gè)迭代器類型,其中每個(gè)迭代元素是一個(gè)match對象,可繼續(xù)調(diào)用group和span方法獲取相應(yīng)結(jié)果

import repattern = re.compile(r’s[a-z]{2,5}’)text1 = ’this is a re test’res = pattern.finditer(text1)for r in res: print(r.group())''' is re test'''

當(dāng)匹配模式串較為簡單或者僅需單詞調(diào)用時(shí),上述所有方法也可直接調(diào)用re類函數(shù),而無需事先編譯。此時(shí)各方法的第一個(gè)參數(shù)為模式串。

import repattern = re.compile(r’d{2,5}’)text = ’this is re test’re.findall(’[a-z]+’, text) #[’this’, ’is’, ’re’, ’test’]03 字符串替換/分割

替換:sub/subn

當(dāng)需要對文本串進(jìn)行條件替換時(shí),可調(diào)用re.sub實(shí)現(xiàn) (當(dāng)然也可先編譯后再用調(diào)用實(shí)例方法) ,相應(yīng)參數(shù)分別為模式串、替換格式、文本串,還可以通過增加缺省參數(shù)限定替換次數(shù)和匹配模式。通過在模式串進(jìn)行分組,可實(shí)現(xiàn)字符串的格式化替換(類似字符串的format方法),以實(shí)現(xiàn)特定任務(wù)。

import retext = ’today is 2020-03-05’print(re.sub(’-’, ’’, text)) #’today is 20200305’print(re.sub(’-’, ’’, text, 1)) #’today is 202003-05’print(re.sub(’(d{4})-(d{2})-(d{2})’, r’2/3/1’, text)) #’today is 03/05/2020’

re.sub的一個(gè)變形方法是re.subn,區(qū)別是返回一個(gè)2元素的元組,其中第一個(gè)元素為替換結(jié)果,第二個(gè)為替換次數(shù)

import retext = ’today is 2020-03-05’print(re.subn(’-’, ’’, text)) #(’today is 20200305’, 2)

分割:split

還可以調(diào)用正則表達(dá)式實(shí)現(xiàn)字符串的特定分割,相當(dāng)于.split()方法的一個(gè)加強(qiáng)版,實(shí)現(xiàn)特定模式的分割,返回一個(gè)切割后的結(jié)果列表

import retext = ’today is a re test, what do you mind?’print(re.split(’,’, text)) #[’today is a re test’, ’ what do you mind?’]04 總結(jié)

python中的re模塊提供了正則表達(dá)式的常用方法,每種方法都包括類方法調(diào)用(如re.match)或模式串的實(shí)例調(diào)用(pattern.match)2種形式

常用的匹配函數(shù):match/fullmatch 常用的搜索函數(shù):search/findall/finditer 常用的替換函數(shù):sub/subn 常用的切割函數(shù):split 還有其他很多方法,但不是很常用,具體可參考官方文檔 另外,python還有第三方正則表達(dá)式庫regex可供選擇

到此這篇關(guān)于一文秒懂python正則表達(dá)式常用函數(shù)的文章就介紹到這了,更多相關(guān)python 正則表達(dá)式常用函數(shù)內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Python 編程
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
国产伦精品一区二区三区视频| 国产精品精品| 精品久久福利| 天堂av一区| 蜜臀久久99精品久久久久宅男| 日韩中文首页| 美女久久久久| 欧美影院精品| 日韩精品一级| 日韩欧美三区| 日本不卡视频在线| 日韩在线a电影| 国产亚洲精品v| 精品丝袜在线| 久久免费国产| 日韩精品网站| 99精品一区| 成人污污视频| 欧美精品福利| 国产精品一级| 欧美激情一区| 久久午夜影院| 欧美激情视频一区二区三区在线播放| 日韩精品高清不卡| **爰片久久毛片| 国产欧美日韩综合一区在线播放| 欧美一区激情| 美女毛片一区二区三区四区最新中文字幕亚洲| 一区二区精品| 欧美精品影院| 美女视频免费精品| 日韩国产在线| 亚洲高清影视| 亚洲三级视频| 日韩三级久久| 国产精品成人一区二区网站软件| 国产精品高潮呻吟久久久久| 国产精品一区二区三区美女 | 日韩福利视频一区| 亚洲精品视频一二三区| 婷婷亚洲成人| 国产精品亚洲欧美日韩一区在线| 韩国女主播一区二区三区| 日韩一区二区三区免费| 久久av一区| 日韩手机在线| 麻豆视频久久| 免费观看久久av| 亚洲精品美女| 国产精品115| 精品日韩视频| 亚洲久久在线| 国产成人精选| 国产精品普通话对白| 国产精品免费精品自在线观看| 国精品产品一区| 亚洲国产日韩欧美在线| 日本va欧美va瓶| 福利精品一区| 黄色亚洲精品| 欧美亚洲一级| 韩国精品主播一区二区在线观看 | 国产九一精品| 日韩精品2区| 日韩亚洲精品在线| 日韩免费精品| 欧美aa在线观看| 日韩综合一区二区| 色在线中文字幕| 日韩区一区二| 日韩专区精品| 三级亚洲高清视频| 国产一区二区三区四区| 国产精品腿扒开做爽爽爽挤奶网站| 欧美性www| 91精品国产自产在线观看永久∴ | 美女网站视频一区| 亚洲91在线| 久久国产毛片| 国产精品入口久久| 午夜欧美视频| 国精品产品一区| 亚洲毛片视频| 欧美国产小视频| 日本va欧美va瓶| 午夜欧美视频| 国产美女高潮在线| 国产精品白丝久久av网站| 黄色aa久久| 欧美视频精品全部免费观看| 丝袜av一区| 久久av日韩| 免费久久精品视频| 久久久久久免费视频| 日韩电影免费网站| 中文字幕成在线观看| 丰满少妇一区| 精品久久视频| 欧美精品中文字幕亚洲专区| 石原莉奈一区二区三区在线观看| 亚洲黄色影院| 国产一区二区精品| 国产视频一区三区| 91成人精品| 香蕉国产精品| 午夜久久一区| 尹人成人综合网| 亚洲综合精品| 久久午夜影视| 中文字幕av亚洲精品一部二部| 美女网站久久| 综合国产精品| 欧美日韩一区二区高清| 国产精品美女在线观看直播| 亚洲精品乱码| 久久国内精品自在自线400部| 国产日韩高清一区二区三区在线 | 性色一区二区| 婷婷久久免费视频| 国产日韩精品视频一区二区三区| 国产精品99久久免费| 久久99精品久久久久久园产越南| 国产精品红桃| 欧美xxxx中国| 视频一区中文| 香蕉久久一区| 久久精品系列| 欧美日韩一区二区三区视频播放| 91久久午夜| 青青草国产成人99久久| 久久99精品久久久野外观看| 国产精选在线| 国产精品嫩草99av在线| 久久精品av麻豆的观看方式| 中文在线а√天堂| 只有精品亚洲| 国产精品任我爽爆在线播放| 亚洲天堂1区| 亚洲18在线| 日韩成人三级| 日本va欧美va瓶| av在线日韩| 欧美一区影院| 国产一区清纯| 蜜桃精品视频| 国产亚洲在线观看| 精品视频网站| 亚洲精品乱码| 久久国产直播| 国产精品黄色| 亚洲免费网址| 国产黄色精品| 欧美片第1页| 蜜臀va亚洲va欧美va天堂| 久久99久久人婷婷精品综合| 国产成人精品免费视| 1024精品久久久久久久久| 一区二区不卡| 日韩高清电影免费| 视频福利一区| 亚洲三级精品| 精品视频免费| 老鸭窝亚洲一区二区三区| 欧美天堂在线| 亚洲美女久久精品| 国产精品日本| 亚州精品视频| 99精品视频在线观看免费播放| 亚洲日产国产精品| 精品99在线| 欧美日韩色图| 精品久久久网| 首页亚洲欧美制服丝腿| 国产精品美女久久久久久不卡| 99精品小视频| 人人爱人人干婷婷丁香亚洲| 午夜欧美精品| 欧美交a欧美精品喷水| 欧美成人亚洲| 国产精品v一区二区三区| 丝袜美腿一区二区三区| 日韩精品视频在线看| 中文在线资源| 欧美一区在线观看视频| 天堂8中文在线最新版在线| 国产精品115| 蜜臀精品一区二区三区在线观看 | 婷婷中文字幕一区| 国产精品久久免费视频| 亚洲高清激情| 日本视频中文字幕一区二区三区| 美女国产精品| 久久久蜜桃一区二区人| 国产欧美69| 女人天堂亚洲aⅴ在线观看| 亚洲精品一区三区三区在线观看| 国产欧美日韩影院| 蜜桃视频一区二区三区| 成人日韩在线| 亚洲天堂资源|