【问题标题】:re.sub replace substring between two specific characters multiple times [duplicate]re.sub多次替换两个特定字符之间的子字符串[重复]
【发布时间】:2021-11-06 02:23:53
【问题描述】:

给定一个字符串s,如下所示,我想多次删除butball之间的子字符串:

s = 'I like sport, but I don\'t like football; I like sport, but I don\'t like basketball'
re.sub('but.*ball', '', s, flags=re.MULTILINE)

输出:

'I like sport, '

我怎样才能得到这样的预期结果:

'I like sport, I like sport'

【问题讨论】:

    标签: python python-3.x regex string re


    【解决方案1】:

    尝试添加问号:

    >>> re.sub('but.*?ball|[,;]', '', s, flags=re.MULTILINE).strip()
    'I like sport  I like sport'
    >>> 
    

    【讨论】:

    • @ahbon 编辑我的答案现在应该可以工作了
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-14
    • 1970-01-01
    • 2018-06-14
    • 2020-06-26
    • 2014-10-12
    相关资源
    最近更新 更多