午夜剧场伦理_日本一道高清_国产又黄又硬_91黄色网战_女同久久另类69精品国产_妹妹的朋友在线

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

re.sub(“。*”,“,”(replacement)“,“ text”)在Python 3.7上的替換次數(shù)翻倍

瀏覽:16日期:2022-08-07 11:56:20
如何解決re.sub(“。*”,“,”(replacement)“,“ text”)在Python 3.7上的替換次數(shù)翻倍?

這不是一個(gè)錯(cuò)誤,而是來自提交fbb490fd2f38bd817d99c20c05121ad0168a38ee的Python3.7中的錯(cuò)誤修復(fù)。

在正則表達(dá)式中,非零寬度的匹配將指針位置移動(dòng)到匹配的末尾,以便下一個(gè)斷言(無論是否為零寬度)都可以從匹配之后的位置繼續(xù)進(jìn)行匹配。因此,在您的示例中,在.*貪婪地匹配并消耗了整個(gè)字符串之后,指針隨后移至字符串末尾的事實(shí)實(shí)際上仍然為該位置的零寬度匹配留有“余地”,這可以從以下代碼,在Python2.7、3.6和3.7中的行為相同:

>>> re.findall('.*', ’sample text’)[’sample text’, ’’]

因此,該錯(cuò)誤修復(fù)程序是在非零寬度匹配之后立即替換零寬度匹配,現(xiàn)在可以用替換文本正確替換兩個(gè)匹配。

解決方法

在Python 3.7(在Windows 64位上測試)上,使用RegEx替換字符串.*會(huì)使輸入字符串重復(fù)兩次!

在Python 3.7.2上:

>>> import re>>> re.sub('.*','(replacement)','sample text')’(replacement)(replacement)’

在Python 3.6.4上:

>>> import re>>> re.sub('.*','sample text')’(replacement)’

在Python 2.7.5(32位)上:

>>> import re>>> re.sub('.*','sample text')’(replacement)’

怎么了?如何解決?

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 五月天婷婷色 | 深爱综合网 | 91视频二区 | 毛片av网址 | 97在线视频免费观看 | 久久视频在线免费观看 | 青青草伊人网 | 超碰免费播放 | 国产成人久久 | 欧美成人一区二区 | 精品国产黄色 | 日韩在线综合 | 国产精品一区二区三区在线播放 | 欧美日韩精品久久久免费观看 | 色黄网站 | 国产一区在线视频观看 | 91原创视频 | 91在线导航 | 久久艹国产 | 天干夜天干天天天爽视频 | 亚洲高清视频在线播放 | 日本在线www | 成人福利在线视频 | 欧美日韩中文字幕一区二区 | 香蕉视频在线播放 | 99精品在线播放 | 亚洲字幕av一区二区三区四区 | 久久精品视频免费看 | 亚洲三区视频 | 香蕉国产在线 | 蜜桃视频色 | 中文字字幕 | 经典三级av | 91精品久久香蕉国产线看观看 | jizz18国产| 热久久国产精品 | 国产视频在 | 成人交配视频 | 国产成人一区二区在线观看 | 久久久女人 | 午夜激情久久 |