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

您的位置:首頁技術文章
文章詳情頁

Python re.sub 反向引用的實現

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

re 模塊是 Python 標準庫中提供的用于處理正則表達式的模塊,利用 re 模塊可以方便的利用正則表達式實現字符串中的匹配、替換等操作

match 分組

Python re 模塊中提供了 match 函數,用來匹配字符串中指定的正則表達式規則。例如,如果想匹配到 'Isaac Newton, physicist' 中的 Isaac Newton,則可以使用正則表達式 w+ w+ ,運行結果如下:

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

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

使用 match 執行匹配時會對匹配到的結果進行 分組 ,可以通過 match 返回結果的 group() 接口查看分組結果

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

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

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

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

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

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

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

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

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

re.sub 中第 1 個參數表示匹配的正則表達式,第 2 個參數表示替換表達式,第 3 個參數表示原始字符串

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

反向引用

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

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

回到開始的例子中,將匹配結果 Isaac Newton改寫為 FirstName: Isaac, LastName: Newton ,可以用以下表達式實現:

>>> 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

到此這篇關于Python re.sub 反向引用的實現的文章就介紹到這了,更多相關Python re.sub 反向引用內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Python 編程
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
午夜在线视频观看日韩17c| 日韩国产在线不卡视频| 亚洲精品麻豆| 亚洲精品乱码久久久久久蜜桃麻豆| 午夜视频精品| 久久一二三区| 日本成人手机在线| 日韩三区四区| 国产精品欧美大片| 国产精品99精品一区二区三区∴ | 国产亚洲激情| 日韩欧美精品综合| 最近高清中文在线字幕在线观看1| 国产黄色一区| 国产亚洲久久| 成人亚洲一区二区| 久久久国产精品网站| 另类专区亚洲| 波多视频一区| 日本少妇一区| www.九色在线| 中文字幕成在线观看| 国产精品毛片久久| 四季av一区二区凹凸精品| 久久超碰99| 欧美精品91| 日韩av一级| 99日韩精品| 久久一区视频| 久久婷婷久久| 丝袜美腿亚洲色图| 视频一区在线播放| 国产精品久久久一区二区| 麻豆精品少妇| 久久国产影院| 欧美另类中文字幕| 亚洲欧美久久久| 国产麻豆精品久久| 亚洲国产一区二区三区在线播放| 中文字幕一区二区av| 欧美~级网站不卡| 久久99久久久精品欧美| 亚洲免费观看| 欧美一区二区三区激情视频| 麻豆一区在线| 国产另类在线| 亚洲一区有码| 黄色亚洲大片免费在线观看| 国产一区二区三区黄网站| 亚洲精品乱码日韩| 免费观看久久久4p| 久久中文视频| 97精品国产一区二区三区 | 欧美一级网址| 香蕉精品999视频一区二区| 国产亚洲一区二区手机在线观看| 丁香婷婷久久| 日韩av在线中文字幕| 国产传媒在线| 极品av在线| 欧美日韩网址| 欧美日韩一视频区二区| 欧美天堂一区二区| 国产精品中文字幕制服诱惑| 国产欧美日韩免费观看| 日本精品国产| 国产精品99久久免费观看| 美女久久久久久| 波多野结衣久久精品| 99精品在线| 在线亚洲激情| 最新国产精品| 国内自拍视频一区二区三区| 国产suv精品一区二区四区视频| 日韩福利在线观看| 亚洲少妇诱惑| 免费人成黄页网站在线一区二区| 国产高清一区| 久久婷婷激情| 亚洲午夜电影| 激情综合自拍| 日韩一级精品| 日韩欧美中文字幕在线视频| 婷婷综合国产| 久久99精品久久久野外观看| аⅴ资源天堂资源库在线| 亚洲二区视频| 日韩精品成人| 欧美香蕉视频| 亚洲+小说+欧美+激情+另类| 欧美日韩一区二区三区四区在线观看 | 亚洲日本免费电影| 97久久精品| 国产91在线精品| 一本色道久久精品| 日韩精品午夜视频| www.九色在线| 欧洲av不卡| 日韩天堂av| 高清在线一区| 1000部精品久久久久久久久| 1024精品久久久久久久久| 国产欧美日韩在线一区二区| 国产精品av一区二区| 欧美黄页在线免费观看| 玖玖玖国产精品| 日韩综合精品| 国产精品极品在线观看| 蜜臀av一区二区在线免费观看| 福利片在线一区二区| 国产日韩欧美三区| 老鸭窝亚洲一区二区三区| 国产精品99久久精品| 国产亚洲一区二区三区不卡| 日韩一区二区三区在线免费观看| 久久av网址| 国产精品毛片一区二区三区| 国产精品黄色片| 亚洲一区久久| 蜜桃成人av| 欧美aa在线观看| 久久av中文| 国产日韩一区| 国产亚洲欧美日韩精品一区二区三区 | 久久永久免费| 久久精品系列| 高清在线一区| 福利片在线一区二区| 国产一区福利| 国产资源在线观看入口av| 国产一区日韩| 精品久久中文| 伊人久久在线| 午夜欧美视频| 蜜臀久久99精品久久久久久9| 日本欧美在线看| 亚洲精品乱码久久久久久蜜桃麻豆| 麻豆成人在线| 国产精品毛片在线| 蜜桃久久精品一区二区| 日本综合视频| 精品国产网站| 免费不卡中文字幕在线| 乱人伦精品视频在线观看| 午夜视频一区二区在线观看| 国产精选一区| 欧美日韩免费观看视频| 亚洲黄页一区| 欧美在线不卡| 日韩国产一区二区| 亚洲精品一二| 成人精品久久| 午夜精品婷婷| 在线看片日韩| 日本а中文在线天堂| 丝袜美腿亚洲一区| 久久一区国产| 亚洲一区二区毛片| 欧美国产不卡| 99在线精品免费视频九九视| 国产高清日韩| 免费一级片91| 女生影院久久| 欧美视频久久| 日韩三级精品| 丝袜美腿诱惑一区二区三区 | 美女毛片一区二区三区四区最新中文字幕亚洲| 精品国产亚洲一区二区三区在线| 欧美日韩国产亚洲一区| 国产一区二区三区久久 | 久久国产福利| 欧美在线亚洲| 巨乳诱惑日韩免费av| 999久久久免费精品国产| 91日韩在线| 色偷偷色偷偷色偷偷在线视频| 国产毛片精品| 日本麻豆一区二区三区视频| 欧美不卡高清一区二区三区| 成年男女免费视频网站不卡| 福利一区和二区| 天堂av在线| 亚洲精品一二三区区别| 日韩成人av影视| 国产精品一区毛片| а√在线中文在线新版| 激情五月综合| 视频一区二区三区在线| 青青草精品视频| 国产精品videossex久久发布 | 久久国产精品99国产| 色综合五月天| 婷婷亚洲综合| 久久激情综合网| 国产伊人精品| 久久99高清| 激情综合网站| 激情久久久久久| 久久精品国产99久久| 色网在线免费观看|