¿Cómo puedo eliminar una subcadena del final de una cadena en Python?


Tengo el siguiente código:

url = 'abcdc.com'
print(url.strip('.com'))

Esperaba: abcdc

Tengo: abcd

Ahora lo hago

url.rsplit('.com', 1)

Hay una manera mejor?

 258
Author: Martin Thoma, 0000-00-00

1 answers

strip no significa "eliminar esta subcadena". x.strip(y) trata a y como un conjunto de caracteres y elimina cualquier carácter de ese conjunto de los extremos de x.

En su lugar, puedes usar endswith y cortar:

url = 'abcdc.com'
if url.endswith('.com'):
    url = url[:-4]

O usando expresiones regulares:

import re
url = 'abcdc.com'
url = re.sub('\.com$', '', url)
 391
Author: ,
Warning: date() expects parameter 2 to be long, string given in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61