久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

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

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

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

這不是一個錯誤,而是來自提交fbb490fd2f38bd817d99c20c05121ad0168a38ee的Python3.7中的錯誤修復。

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

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

因此,該錯誤修復程序是在非零寬度匹配之后立即替換零寬度匹配,現在可以用替換文本正確替換兩個匹配。

解決方法

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

在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)’

怎么了?如何解決?

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 日韩成人在线播放 | 日本高清视频网站www | 成人毛片在线观看视频 | 国产乱码精品一区二区三区av | 99久久国产综合精品女不卡 | 欧美一性一交 | 仙人掌旅馆在线观看 | 日韩精品免费观看 | 国产亚洲精品久久久闺蜜 | 91一区二区三区 | 日本久久综合 | 日韩精品一区二区三区在线播放 | 国产91富婆养生按摩会所 | 黄网免费 | 中文字幕 国产精品 | 天天干天天看天天操 | 日韩激情一区二区 | 亚洲人人 | 亚洲永久免费视频 | 伊人免费在线观看高清版 | 久久高清 | a在线看 | 最近中文字幕在线视频1 | 日韩激情一区二区 | 国产1级片 | 91精品国产综合久久久久久丝袜 | 91在线精品一区二区 | 男女激情网址 | 国产噜噜噜噜噜久久久久久久久 | 天堂资源网 | 校园春色av| 国产三级一区二区 | 亚洲永久免费 | 91精品国产综合久久久久久丝袜 | 91小视频| 欧美日韩一区二区视频在线观看 | 欧美日韩国产在线播放 | 国产精品欧美久久久久一区二区 | 亚洲精品免费在线 | 久久精品视频在线播放 | 久久高清毛片 |