Expresiones regulares - split() y sub() - RegEx - Curso de Python desde cero - Capítulo 49
Nos encontramos casi en la meta del curso y es el momento de terminar con las expresiones regulares en este curso viendo split() y sub(). ¡Empecemos!
La función split() en Python
Empecemos con la función split(). Esta función divide una cadena de caracteres según un patrón de búsqueda.
Código Python
import re
texto = "tres tristes tigres comen trigo en un trigal"
busqueda = re.split(" ", texto)
print(busqueda)
terminal Resultado en la consola terminal
El resultado de utilizar split() con un espacio como patrón, es que me excluye todos los espacios del string y me los separa palabra por palabra en una lista.
Por supuesto, no solo funciona con espacios, puedes indicarle que excluya y divida cualquier cosa:
Código Python
import re
texto = "tres tristes tigres comen trigo en un trigal"
busqueda = re.split("es", texto)
print(busqueda)
terminal Resultado en la consola terminal
['tr', ' trist', ' tigr', ' comen trigo en un trigal']
¿Cómo utilizar maxsplit de Python?
maxsplit controla el máximo de coincidencias que devuelve split()
Código Python
maxsplitse representa como el tercer argumento de split(), en este caso el 4.
import re
texto = "tres tristes tigres comen trigo en un trigal"
busqueda = re.split(" ", texto, 4)
print(busqueda)
terminal Resultado en la consola terminal
Muestra hasta cuatro resultados, si los tiene. El resto de coincidencias las ignora y las deja como resto, con lo que nos da como resultado cinco elementos en este ejemplo (cuatro resultados más el resto).
['tres', 'tristes', 'tigres', 'comen', 'trigo en un trigal']
La función sub() de Python
La función sub() reemplaza las coincidencias por lo que le especifiques en el segundo argumento.
Código Python
En el primer argumento se especifica lo que quieres buscar, en el segundo lo que quieres que se reemplace en las coincidencias y el tercero es de donde quieres hacer estas acciones.
import re
texto = "tres tristes tigres comen trigo en un trigal"
busqueda = re.sub(" ", "-", texto)
print(busqueda)
terminal Resultado en la consola terminal
tres-tristes-tigres-comen-trigo-en-un-trigal
Limitar los resultados de sub con count
Puedes limitar los resultados que reemplaza sub() añadiendo el número como cuarto parámetro:
Código Python
import re
texto = "tres tristes tigres comen trigo en un trigal"
busqueda = re.sub(" ", "-", texto, 4)
print(busqueda)
terminal Resultado en la consola terminal
tres-tristes-tigres-comen-trigo en un trigal
Suscríbete a mi canal de YouTube para apoyarme
Si te ha gustado este curso y crees que el trabajo merece la pena, te agradeceré eternamente que te suscribas a mi canal de YouTube para apoyarme y que pueda seguir haciendo cursos gratuitos.
Además, si te encanta la programación, tienes un montón más de cursos gratuitos para ver.
No solo eso, podrás participar enviándome comentarios con tus sugerencias para temas específicos o cursos completos o incluso las dudas que tengas y las intentaré ir resolviendo en los cursos que estén todavía abiertos.
Comentarios
Si te quedan dudas sobre el temario, sobre Python, o cualquier otra cosa relacionada o simplemente quieres agradecer, aquí tienes tu sitio para dejar tu granito de arena. Gracias por tus comentarios y por darle vida a este sitio web.
IDEs para Python
PyCharm
Pycharm es un fantástico IDE para Python. Cuenta con versión gratuita y versión de pago. Tú eliges.
Como única desventaja, podemos decir que si el inglés no es lo tuyo, puede ser que este IDE no te vaya del todo cómodo, ya que por el momento, no está en español.
Puedes contactarme para peticiones comerciales y proyectos a mi correo electrónico.
Para dudas sobre el sitio web o sobre alguno de los cursos, puedes dejarme comentarios en la página correspondiente a la duda o en mi canal de YouTube.