es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Guardar apóstrofes en re.sub en Python.

Quiero guardar solo letras normales y apóstrofes con el comando re.sub en Python, sin embargo en este momento mi código elimina los apóstrofes, por lo que “don’t” se convierte en “dont”, etc. ¿Puedo agregar una “salvaguarda” de apóstrofes a mi comando re.sub o debo usar otra solución?

Mi código actual:

text = open("songs/" + artist + "/" + album + "/" + song, "r", encoding="latin-1")
lines = text.readlines()
for line in lines:
    line = line.lower()
    line = re.sub('[^a-z ]', '', line)
    words = line.split(" ")
Tags:  , ,

Answer

  1. Avatar for davy.ai

    Para guardar apóstrofes en tu patrón regex, necesitas incluir el carácter de apóstrofe dentro de los corchetes []. Actualmente, tu patrón es [^a-z ], el cual coincide con cualquier carácter que no sea una letra minúscula o un espacio. Para incluir apóstrofes, puedes modificar el patrón de la siguiente manera:

    re.sub('[^a-z\' ]', '', line)
    

    Aquí, el patrón coincide con cualquier carácter que no sea una letra minúscula, un espacio o un apóstrofe. Esto preservará los apóstrofes en tu texto.

Comments are closed.