替换 Python 中第一次出现的字符串

Posted

技术标签:

【中文标题】替换 Python 中第一次出现的字符串【英文标题】:Replace first occurrence of string in Python 【发布时间】:2011-06-05 10:39:20 【问题描述】:

我有一些示例字符串。如何用空字符串替换较长字符串中此字符串的第一次出现?

regex = re.compile('text')
match = regex.match(url)
if match:
    url = url.replace(regex, '')

【问题讨论】:

您在搜索和替换什么? url 里面是什么? 我想替换我的 url 字符串中第一次出现的“文本” 【参考方案1】:

stringreplace()函数完美解决了这个问题:

string.replace(s, old, new[, maxreplace])

返回字符串 s 的副本,其中所有出现的子字符串 old 都替换为 new。如果给出了可选参数 maxreplace,则替换第一个 maxreplace 出现。

>>> u'longlongTESTstringTEST'.replace('TEST', '?', 1)
u'longlong?stringTEST'

【讨论】:

【参考方案2】:

直接使用re.sub,这样你就可以指定count

regex.sub('', url, 1)

(请注意,参数的顺序是 replacementoriginal 不是相反的,可能有人怀疑。)

【讨论】:

以上是关于替换 Python 中第一次出现的字符串的主要内容,如果未能解决你的问题,请参考以下文章

如何替换Java中第一次出现的字符串

替换字符串中第一次出现的模式[重复]

Linux sed 替换第一次出现的字符串

Hive 查询仅替换第一次出现的子字符串

替换字符串中最后一次出现的字符[重复]

Python中如何查找和替换文本?