【问题标题】:How to replace the first occurrence of a regular expression in Python?如何替换 Python 中第一次出现的正则表达式?
【发布时间】:2011-04-26 11:37:54
【问题描述】:

我只想替换字符串中第一次出现的正则表达式。有没有方便的方法来做到这一点?

【问题讨论】:

    标签: python regex search replace


    【解决方案1】:

    re.sub() 有一个count 参数,指示要执行多少次替换。您可以将其设置为 1:

    >>> s = "foo foo foofoo foo"
    >>> re.sub("foo", "bar", s, 1)
    'bar foo foofoo foo'
    >>> s = "baz baz foo baz foo baz"
    >>> re.sub("foo", "bar", s, 1)
    'baz baz bar baz foo baz'
    

    编辑:以及带有已编译 SRE 对象的版本:

    >>> s = "baz baz foo baz foo baz"
    >>> r = re.compile("foo")
    >>> r.sub("bar", s, 1)
    'baz baz bar baz foo baz'
    

    【讨论】:

      【解决方案2】:

      re.sub(pattern, repl, string[, count, flags]) 中指定count 参数

      可选参数计数是 模式出现的最大数量 将被替代;计数必须是 非负整数。如果省略或 零,所有的事件都将是 换了。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-06-06
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多