【问题标题】:python regex sub replace the whole string [duplicate]python regex sub替换整个字符串[重复]
【发布时间】:2020-05-15 23:09:19
【问题描述】:

假设我想用replacement 替换以abc 开头的字符串:

import re

s = 'abcdefg'

re.sub(r'^abc', 'replacement', s)
replacementdefg

我应该怎么做才能只返回replacement 而不是replacementdefg

【问题讨论】:

  • 您可以将.* 附加到模式中。
  • 为什么RegEx。为什么不startswith()?还是您的样本没有代表性?
  • startswith() 更可取吗?如果是,为什么?
  • 嗯,它是一个内置函数,不需要导入。我不喜欢技术,但我想这是首选。
  • 我明白了!感谢您的解释。在这种情况下,我使用pandas.Series.str.replace(),因此不需要额外的导入。但很高兴知道以供将来参考。

标签: python regex


【解决方案1】:

.*匹配字符串的其余部分

import re

s = 'abcdefg'

s = re.sub(r'^abc.*', 'replacement', s)
print(s)

输出:

replacement

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-11-08
    • 1970-01-01
    • 2015-04-17
    • 1970-01-01
    • 2016-06-06
    • 1970-01-01
    • 2016-02-10
    相关资源
    最近更新 更多