Reemplace la primera aparición de la cadena en Python

Tengo una cadena de muestra. ¿Cómo puedo reemplazar la primera aparición de esta cadena en una cadena más larga con una cadena vacía?

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

La función de sustitución de cadena () resuelve perfectamente este problema:

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

Devuelva una copia de la cadena s con todas las apariciones de la subcadena antigua reemplazada por nueva. Si se proporciona el argumento opcional maxreplace, se reemplazan las primeras ocurrencias de maxreplace.

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

Use re.sub directamente, esto le permite especificar un count :

 regex.sub('', url, 1) 

(Tenga en cuenta que el orden de los argumentos es de replacement , el original no es el opuesto, como podría sospecharse).