Заменить первое вхождение строки в Python



У меня есть пример строки. Как я могу заменить первое вхождение этой строки в более длинную строку пустой строкой?



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

2 ответов:

string заменить() функция если отлично решает эту проблему:

строку.заменить(s, Старый, Новый [, maxreplace])

возвращает копию строки S все вхождения подстроки старые заменяются новыми. Если задан необязательный аргумент maxreplace, то заменяются первые вхождения maxreplace.

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

использовать re.sub непосредственно, это позволяет указать count:

regex.sub('', url, 1)

(обратите внимание, что порядок аргументов replacement,original не наоборот, как можно было бы заподозрить.)

Comments

    Ничего не найдено.