我想过滤字符串中的所有“wub”例如"wubwubwubIwubwubwubAmwubwubHere“-->我在这里
首先,我尝试了re.split(r'wub',string),结果是['', '', '', 'I', '', '', 'AM', '', 'Here']。出现了一些空元素。我必须添加一个filter来删除那些无元素。我想知道有没有一种直接的正则表达式方法可以过滤所有的“wub”而不留下任何元素?
像这样的re.split(r'\s+', 'a b c') --> 'a','b','c‘
发布于 2015-05-19 14:39:51
您可以使用以下内容进行匹配:
(wub)+并替换为(space)
发布于 2015-05-19 14:39:39
您不能单独使用单个正则表达式来完成此任务。
>>> s = "wubwubwubIwubwubwubAmwubwubHere"
>>> re.sub(r'(?:wub)+', ' ', s).strip()
'I Am Here'或
>>> ' '.join(i for i in re.split(r'(?:wub)+', s) if i)
'I Am Here'https://stackoverflow.com/questions/30318368
复制相似问题