Ho qualche stringa di esempio. Come posso sostituire la prima occorrenza di questa stringa in una stringa più lunga con una stringa vuota?
regex = re.compile('text')
match = regex.match(url)
if match:
url = url.replace(regex, '')
Ho qualche stringa di esempio. Come posso sostituire la prima occorrenza di questa stringa in una stringa più lunga con una stringa vuota?
regex = re.compile('text')
match = regex.match(url)
if match:
url = url.replace(regex, '')
Risposte:
La funzione string replace () risolve perfettamente questo problema:
string.replace (s, old, new [, maxreplace])
Restituisce una copia della stringa s con tutte le occorrenze della sottostringa vecchia sostituita da nuova. Se viene fornito l'argomento opzionale maxreplace, le prime occorrenze maxreplace vengono sostituite.
>>> u'longlongTESTstringTEST'.replace('TEST', '?', 1)
u'longlong?stringTEST'
Usa re.subdirettamente, questo ti permette di specificare un count:
regex.sub('', url, 1)
(Notare che l'ordine degli argomenti è replacement, originalnon il contrario, come si potrebbe sospettare.)
url?