首页 > 解决方案 > python re.sub 没有替换所有出现的字符串

问题描述

我没有得到想要的输出,re.sub 只是使用 python 正则表达式替换最后一次出现,请解释我做错了什么

srr = "http://www.google.com/#image-1CCCC| http://www.google.com/#image-1VVDD| http://www.google.com/#image-123|  http://www.google.com/#image-123| http://www.google.com/#image-1CE005XG03"
re.sub("http://.*[#]", "", srr)
'image-1CE005XG03'

从上面的字符串中希望没有http://www.google.com/#image的输出。

image-1CCCC|image-1VVDD|image-123|image-1CE005XG03

标签: pythonregexstringre

解决方案


>>> "|".join(re.findall(r'#([^|\s]+)', srr))
'image-1CCCC|image-1VVDD|image-123|image-123|image-1CE005XG03'

推荐阅读