成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

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

Python re.sub 反向引用的實(shí)現(xiàn)

瀏覽:108日期:2022-06-15 11:35:48
目錄match 分組re.sub 匹配和替換反向引用參考

re 模塊是 Python 標(biāo)準(zhǔn)庫(kù)中提供的用于處理正則表達(dá)式的模塊,利用 re 模塊可以方便的利用正則表達(dá)式實(shí)現(xiàn)字符串中的匹配、替換等操作

match 分組

Python re 模塊中提供了 match 函數(shù),用來(lái)匹配字符串中指定的正則表達(dá)式規(guī)則。例如,如果想匹配到 'Isaac Newton, physicist' 中的 Isaac Newton,則可以使用正則表達(dá)式 w+ w+ ,運(yùn)行結(jié)果如下:

>>> m = re.match('w+ w+', 'Isaac Newton, physicist')>>> m<re.Match object; span=(0, 12), match=’Isaac Newton’>

re.match 的第一個(gè)參數(shù)是指定的正則表達(dá)式規(guī)則,第二個(gè)參數(shù)是待匹配的字符串。正則表達(dá)式規(guī)則 w+ 表示匹配一段連續(xù)的字符,要求匹配到的字符數(shù)量大于 1。 w+ w+ 就表示匹配兩段連續(xù)的字符,且兩段字符中間用空格隔開

使用 match 執(zhí)行匹配時(shí)會(huì)對(duì)匹配到的結(jié)果進(jìn)行 分組 ,可以通過(guò) match 返回結(jié)果的 group() 接口查看分組結(jié)果

>>> m.group(0)’Isaac Newton’

默認(rèn)情況下, match 只會(huì)產(chǎn)生一個(gè)分組,就是第 0 個(gè)分組,表示整個(gè)匹配到的內(nèi)容。對(duì)于上面的例子,第 0 個(gè)分組就是 w+ w+ 匹配到的完整的內(nèi)容,也就是 Issac Newton 。使用正則表達(dá)式中的括號(hào) () 可以手動(dòng)指定匹配的分組。例如如果想把 Issac 和 Newton 做為兩個(gè)分組,那么可以將正則表達(dá)式改為 (w+) (w+) :

>>> m = re.match('(w+) (w+)', 'Isaac Newton, physicist')

在 (w+) (w+) 這個(gè)正則表達(dá)式中,指定了兩個(gè)分組,這兩個(gè)分組匹配的內(nèi)容都是 w+ ,并且兩個(gè)分組之間用空格隔開。使用 groups() 可以查看匹配結(jié)果中的所有分組 :

>>> m.groups()(’Isaac’, ’Newton’)

也可以使用 group() 接口分別查看每一個(gè)分組,其中 group(0) 仍然表示完整的匹配結(jié)果, group(1) 表示匹配結(jié)果中的第 1 個(gè)分組, group(2) 表示第 2 個(gè)分組,以此類推:

>>> m.group(0)’Isaac Newton’>>> m.group(1)’Isaac’>>> m.group(2)’Newton’re.sub 匹配和替換

re.match() 函數(shù)提供了正則表達(dá)式的匹配接口, re.sub() 不光能匹配正則表達(dá)式,還能替換字符串中的結(jié)果,生成一個(gè)新的字符串。例如把字符串中 (w+) (w+) 匹配到的結(jié)果替換成 Albert Einstein ,可以這樣寫:

>>> re.sub('(w+) (w+)', 'Albert Einstein', 'Isaac Newton, physicist')’Albert Einstein, physicist’

re.sub 中第 1 個(gè)參數(shù)表示匹配的正則表達(dá)式,第 2 個(gè)參數(shù)表示替換表達(dá)式,第 3 個(gè)參數(shù)表示原始字符串

這里的替換表達(dá)式是手動(dòng)指定的新字符串 Albert Einstein ,他和原始字符串中的內(nèi)容毫不相關(guān)。如果希望復(fù)用原始字符串中的內(nèi)容,那么就需要用到 re.sub 的反向引用功能了。

反向引用

反向引用指的是在指定替換結(jié)果的過(guò)程中,可以引用原始字符串中的匹配到內(nèi)容。例如 (w+) (w+) 在原始字符串中匹配到了 Isaac Newton ,利用匹配到的結(jié)果,將結(jié)果改寫為 FirstName: Isaac, LastName: Newton 。既然需要引用,那么就得有一個(gè)表達(dá)式能夠表示匹配的內(nèi)容。恰好 re.sub 的匹配結(jié)果也有和 re.match 一樣的分組,因此只需要在替換表達(dá)式中引用分組的結(jié)果即可。引用方式有以下幾種:

number :例如 1 ,表示匹配結(jié)果中第 1 個(gè)分組,也就是例子中的 Isaac 部分。 g<number> :例如 g<1> ,和 number 表示法一樣,也代表了匹配結(jié)果中的第 1 個(gè)分組。與 number 表示法相比, g<number> 避免了歧義。試想,如果想用 number 把第 1 個(gè)分組匹配到的 Isaac 替換為 Isaac0 ,那么需要用 10 ,這里本意表示在第 1 個(gè)分組后加上 0 ,但程序會(huì)識(shí)別成第 10 個(gè)分組。而使用 g<number> 只需要寫成 g<1>0 即可。

回到開始的例子中,將匹配結(jié)果 Isaac Newton改寫為 FirstName: Isaac, LastName: Newton ,可以用以下表達(dá)式實(shí)現(xiàn):

>>> re.sub('(w+) (w+)', 'FirstName: g<1>, LastName: g<2>', 'Isaac Newton, physicist')’FirstName: Isaac, LastName: Newton, physicist’參考

re — Regular expression operations Python re(gex)? -- Groupings and backreferences

到此這篇關(guān)于Python re.sub 反向引用的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)Python re.sub 反向引用內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Python 編程
相關(guān)文章:
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
2021中文字幕一区亚洲| 蜜桃久久久久久久| 七七婷婷婷婷精品国产| 亚洲国产日韩欧美一区二区三区| 精品国产91洋老外米糕| 国产精品一色哟哟哟| 色菇凉天天综合网| 天堂一区二区在线免费观看| 国产日韩欧美三级| 亚洲视频网在线直播| 午夜国产精品视频| 久久人人97超碰com| 国产一区二区不卡| 91久久精品一区二区三区| 亚洲一二三区在线观看| 亚洲区一区二| 亚洲日本va在线观看| 亚洲成人在线| 中文字幕一区二区三区不卡在线| 91免费版pro下载短视频| 欧美成人三级在线| 丰满少妇久久久久久久| 91精品国产色综合久久久蜜香臀| 精品亚洲成av人在线观看| 精品视频在线免费| 国产在线观看一区二区| 在线播放欧美女士性生活| 玖玖九九国产精品| 欧美日韩亚洲不卡| 亚洲大胆在线| 美日韩在线观看| 樱花草国产18久久久久| 亚洲伦伦在线| 亚洲激情中文1区| 国产精品一区免费观看| 亚洲va在线va天堂| 色婷婷国产精品久久包臀| 日韩电影免费在线看| 色婷婷综合久久久久中文一区二区| 亚洲成人午夜电影| 久久久久网站| 日韩精品三区四区| 久久经典综合| 蜜臀久久久99精品久久久久久| 欧洲国内综合视频| 国产一区二区不卡老阿姨| 欧美www视频| 你懂的网址国产 欧美| 国产精品免费aⅴ片在线观看| 在线观看成人av电影| 一区二区三区欧美视频| 久久青青草综合| 另类小说一区二区三区| 国产精品免费丝袜| 中日韩男男gay无套| 亚洲线精品一区二区三区| 欧美国内亚洲| 国产精品理论在线观看| 亚洲第一黄色| 图片区日韩欧美亚洲| 欧美色老头old∨ideo| 懂色av一区二区三区免费观看| 久久久电影一区二区三区| 精品不卡一区| 天天做天天摸天天爽国产一区| 欧美中文字幕一二三区视频| 成人性生交大合| 国产精品视频在线看| 国产精品一级| 美国欧美日韩国产在线播放| 精品久久免费看| 亚洲精品影院在线观看| 日本欧洲一区二区| 欧美不卡一二三| 在线亚洲精品| 国产精品中文字幕欧美| 中文在线一区二区| 亚洲女人av| 国产精品99久久不卡二区| 国产精品免费观看视频| 91成人网在线| 色综合网色综合| 丝袜a∨在线一区二区三区不卡| 欧美电影免费观看完整版| 伊人婷婷久久| 精一区二区三区| 国产三级三级三级精品8ⅰ区| 亚洲精品极品| 激情久久五月天| 亚洲国产精华液网站w| 久久精品盗摄| 97aⅴ精品视频一二三区| 亚洲电影你懂得| 精品日韩欧美在线| 奶水喷射视频一区| 成人app在线| 亚洲国产视频直播| 精品国产乱码久久久久久夜甘婷婷| 99热免费精品在线观看| 国产一本一道久久香蕉| 亚洲乱码国产乱码精品精98午夜| 欧美视频一区在线| 欧美日韩精品久久| 久久电影网站中文字幕| 亚洲欧洲日韩综合一区二区| 欧美日韩国产大片| 日韩午夜免费| 成人精品亚洲人成在线| 午夜精品久久久久久久99樱桃| 2024国产精品视频| 91搞黄在线观看| 在线国产欧美| 国产a级毛片一区| 91在线丨porny丨国产| 性久久久久久久| 日韩欧美国产小视频| 欧美午夜电影在线观看| 久久青青草综合| 粉嫩aⅴ一区二区三区四区| 亚洲影院理伦片| 久久久www免费人成精品| 欧美视频一区二区三区四区 | 日韩高清在线一区| 国产精品久久三| 欧美一区二区三区日韩视频| 免费日韩一区二区| 欧美在线看片| 国产精品一区二区久久不卡| 亚洲国产日韩精品| 国产日韩欧美高清| 欧美日韩成人激情| 免费久久99精品国产自在现线| 暖暖成人免费视频| 国产精品亚洲第一区在线暖暖韩国| 一区二区高清免费观看影视大全 | 久久99精品久久只有精品| 久久久99爱| 国模娜娜一区二区三区| 91精品蜜臀在线一区尤物| 国产精品一级久久久| 欧美区一区二| 懂色av中文字幕一区二区三区| 亚洲va在线va天堂| 亚洲人午夜精品天堂一二香蕉| 在线播放日韩导航| 日本精品一区二区三区高清 | 亚洲色图一区二区三区| 久久精品在线免费观看| 日韩一级片在线播放| 欧美欧美欧美欧美首页| 91国内精品野花午夜精品| 亚洲在线网站| 亚洲看片免费| 国语自产精品视频在线看抢先版结局| 成熟亚洲日本毛茸茸凸凹| 美日韩黄色大片| 一卡二卡欧美日韩| 国产精品人成在线观看免费| 欧美电视剧免费观看| 在线不卡中文字幕| 精品视频1区2区3区| 色婷婷av一区| 免费久久99精品国产自在现线| 亚洲国产日韩欧美| 亚洲无线视频| 欧美日韩亚洲一区二区三区在线 | 亚洲国产合集| 欧美日韩一视频区二区| 99视频在线精品| 成人晚上爱看视频| 国产成人久久精品77777最新版本 国产成人鲁色资源国产91色综 | 午夜精品久久久久99热蜜桃导演| 丰满少妇在线播放bd日韩电影| 日韩avvvv在线播放| 亚洲高清免费一级二级三级| 日韩理论在线观看| 国产精品国产自产拍高清av王其 | 久热成人在线视频| 蜜臀av一区二区三区| 五月婷婷综合网| 天堂午夜影视日韩欧美一区二区| 亚洲国产日韩在线一区模特| 亚洲午夜视频在线| 亚洲小少妇裸体bbw| 亚洲国产日韩一区二区| 午夜电影网一区| 天堂久久一区二区三区| 亚洲不卡av一区二区三区| 午夜av电影一区| 日本不卡1234视频| 美女视频黄久久| 精品亚洲成av人在线观看| 国产一区二区在线影院| 国产在线精品一区二区| 国产精品99久久久久久宅男| 成人动漫一区二区| 成人午夜电影久久影院| av亚洲精华国产精华精| 91美女蜜桃在线| 91亚洲国产成人精品一区二区三 |