Python - Librería RE

##################################################### #30 ejemplos en Python utilizando la librería re: #1. Buscar una cadena en un texto ignorando ma0..yúsculas y minúsculas: import re texto = "Hola, ¿cómo estás?" patron = "ESTÁS" resultado = re.search(patron, texto, re.IGNORECASE) print(resultado) #2. Buscar una cadena al final de un texto: import re texto = "Hola, ¿cómo estás?" patron = "estás{{SSR}}quot; resultado = re.search(patron, texto) print(resultado) #3. Buscar una cadena que contenga solo letras: import re texto = "abc123" patron = "^[a-zA-Z]+{{SSR}}quot; resultado = re.search(patron, texto) print(resultado) #4. Buscar una cadena que contenga solo números: import re texto = "abc123" patron = "^[0-9]+{{SSR}}quot; resultado = re.search(patron, texto) print(resultado) #5. Buscar una cadena en un texto: import re texto = "Hola, ¿cómo estás?" patron = "estás" resultado = re.search(patron, texto) print(resultado.group()) #6. Buscar una cadena al principio de un texto: import re texto = "Hola, ¿cómo estás?" patron = "^Hola" resultado = re.search(patron, texto) print(resultado.group()) #7. Buscar una cadena que empiece por una letra y termine en un número: import re texto = "abc123" patron = "^[a-zA-Z]+[0-9]+{{SSR}}quot; resultado = re.search(patron, texto) print(resultado.group()) #8. Buscar una cadena que contenga solo letras y números: import re texto = "abc123" patron = "^[a-zA-Z0-9]+{{SSR}}quot; resultado = re.search(patron, texto) print(resultado.group()) #9. Buscar una cadena que contenga al menos una letra y un número: import re texto = "abc123" patron = "(?=.*[a-zA-Z])(?=.*[0-9]).+" resultado = re.search(patron, texto) print(resultado.group()) #10. Buscar una cadena que contenga al menos una letra mayúscula, una letra minúscula y un número: import re texto = "Abc123" patron = "(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9]).+" resultado = re.search(patron, texto) print(resultado.group()) #11. Buscar una cadena que contenga al menos una letra mayúscula, una letra minúscula, un número y un carácter especial: import re texto = "Abc123!" patron = "(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[!@#$%^&*()_+]).+" resultado = re.search(patron, texto) print(resultado.group()) #12. Buscar una cadena que contenga un número de teléfono en formato (123) 456-7890: import re texto = "Mi número de teléfono es (123) 456-7890" patron = "\(\d{3}\) \d{3}-\d{4}" resultado = re.search(patron, texto) print(resultado.group()) #13. Buscar una cadena que contenga una dirección de correo electrónico: import re texto = "Mi correo electrónico es ejemplo@gmail.com" patron = "\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,}\b" resultado = re.search(patron, texto) print(resultado.group()) #14. Buscar una cadena que contenga una dirección de URL: import re texto = "Visita mi sitio web en https://www.ejemplo.com" patron = "(?Phttps?://[^\s]+)" resultado = re.search(patron, texto) print(resultado.group("url")) #15. Buscar una cadena que contenga una fecha en formato dd/mm/aaaa: import re texto = "La fecha de hoy es 30/05/2023" patron = "\d{2}/\d{2}/\d{4}" resultado = re.search(patron, texto) print(resultado.group()) #16. Buscar una cadena que contenga una hora en formato hh:mm:ss... import re texto = "La hora actual es 12:30:45" patron = "\d{2}:\d{2}:\d{2}" resultado = re.search(patron, texto) print(resultado.group()) #17. Buscar una cadena que contenga una dirección IP: import re texto = "Mi dirección IP es 192.168.1.1" patron = "\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}" resultado = re.search(patron, texto) print(resultado.group()) #18. Buscar una cadena que contenga un número decimal: import re texto = "El número es 3.14" patron = "\d+\.\d+" resultado = re.search(patron, texto) print(resultado.group()) #19. Buscar una cadena que contenga un número entero: import re texto = "El número es 42" patron = "\d+" resultado = re.search(patron, texto) print(resultado.group()) #20. Buscar una cadena que contenga una palabra que empiece por "a" y termine por "o": import re texto = "El animal es un gato" patron = "\ba\w*o\b" resultado = re.search(patron, texto) print(resultado.group()) #21. Buscar una cadena que contenga una palabra que empiece por "a" y tenga una longitud de al menos 5 caracteres: import re texto = "El animal es un avestruz" patron = "\ba\w{4,}\b" resultado = re.search(patron, texto) print(resultado.group()) #22. Buscar una cadena que contenga una palabra que empiece por "a" y tenga una longitud de entre 3 y 5 caracteres: import re texto = "El animal es un ave" patron = "\ba\w{2,4}\b" resultado = re.search(patron, texto) print(resultado.group()) #23. Buscar una cadena que contenga una palabra que empiece por "a" y tenga una longitud de al menos 3 caracteres, pero no más de 5 caracteres: import re texto = "El animal es un avión" patron = "\ba\w{2,4}\b" resultado = re.search(patron, texto) print(resultado.group()) #24. Buscar una cadena que contenga una palabra que empiece por "a" y tenga una longitud de al menos 3 caracteres, pero no más de 5 caracteres, ignorando mayúsculas y minúsculas: import re texto = "El animal es un Avión" patron = "\ba\w{2,4}\b" resultado = re.search(patron, texto, re.IGNORECASE) print(resultado.group()) #25. Buscar una cadena que contenga una palabra que empiece por "a" y tenga una longitud de al menos 3 caracteres, pero no más de 5 caracteres, en una lista de palabras: import re palabras = ["animal", "ave", "avión"] patron = "\ba\w{2,4}\b" for palabra in palabras: resultado = re.search(patron, palabra) if resultado: print(resultado.group()) #26. Buscar una cadena que contenga una palabra que empiece por "a" y tenga una longitud de al menos 3 caracteres, pero no más de 5 caracteres, en un archivo de texto: import re with open("archivo.txt", "r") as archivo: texto = archivo.read() patron = "\ba\w{2,4}\b" resultado = re.search(patron, texto) print(resultado.group()) #27. Buscar todas las ocurrencias de una cadena en un texto: import re texto = "La casa es roja y la puerta es roja" patron = "roja" resultados = re.findall(patron, texto) print(resultados) #28. Reemplazar una cadena por otra en un texto: import re texto = "La casa es roja y la puerta es roja" patron = "roja" reemplazo = "verde" resultado = re.sub(patron, reemplazo, texto) print(resultado) #29. Dividir un texto en una lista de palabras: import re texto = "La casa es roja y la puerta es roja" patron = "\W+" palabras = re.split(patron, texto) print(palabras) #30. Validar si una cadena es un correo electrónico válido: import re correo = "usuario@dominio.com" patron = "\w+@\w+\.\w+" resultado = re.match(patron, correo) if resultado: print("Correo electrónico válido") else: print("Correo electrónico inválido") #31. Validar si una cadena es un número de teléfono válido en formato internacional: import re telefono = "+1-555-555-5555" patron = "\+\d{1,3}-\d{3}-\d{3}-\d{4}" resultado = re.match(patron, telefono) if resultado: print("Número de teléfono válido") else: print("Número de teléfono inválido") #32. Validar si una cadena es una dirección postal válida en Estados Unidos: import re direccion = "123 Main St, Anytown, CA 12345" patron = "\d{1,5}\s\w+\s\w+,\s\w+,\s\w+\s\d{5}" resultado = re.match(patron, direccion) if resultado: print("Dirección postal válida") else: print("Dirección postal inválida") #33. Validar si una cadena es una dirección IP válida: import re ip = "192.168.1.1" patron = "\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}" resultado = re.match(patron, ip) if resultado: print("Dirección IP válida") else: print("Dirección IP inválida") #34. La función compile compila una expresión regular #en un objeto de patrón que puede ser utilizado para buscar texto. import re patron = re.compile(r'\d+') texto = 'La casa tiene 3 habitaciones y 2 baños.' resultado = patron.findall(texto) print(resultado) #35. La función purge elimina todos los patrones compilados almacenados en caché. import re re.purge() #36. La función compile también puede tomar argumentos opcionales #para controlar el comportamiento de la búsqueda, como IGNORECASE #para ignorar mayúsculas y minúsculas. import re patron = re.compile(r'casa', re.IGNORECASE) texto = 'La casa tiene 3 habitaciones y 2 baños.' resultado = patron.findall(texto) print(resultado) #37. La función compile también puede tomar argumentos opcionales #para controlar el comportamiento de la búsqueda, #como MULTILINE para buscar en varias líneas. import re patron = re.compile(r'^La', re.MULTILINE) texto = 'La casa tiene 3 habitaciones.\nLa cocina es grande.' resultado = patron.findall(texto) print(resultado) #38. La función compile también puede tomar argumentos opcionales #para controlar el comportamiento de la búsqueda, como DOTALL #para permitir que '.' coincida con cualquier carácter, #incluso saltos de línea. import re patron = re.compile(r'.+', re.DOTALL) texto = 'La casa tiene\n3 habitaciones\ny 2 baños.' resultado = patron.findall(texto) print(resultado) #39. La función purge también puede tomar un argumento opcional #para eliminar solo los patrones compilados que coinciden con una expresión regular. import re re.compile(r'\d+') re.compile(r'[A-Z]') re.purge(r'\d+') #40. Utilizando la función `compile` para buscar una palabra específica en un texto. import re patron = re.compile(r'\bPython\b') texto = 'Me gusta programar en Python.' resultado = patron.search(texto) if resultado: print('Se encontró la palabra "Python" en el texto.') else: print('No se encontró la palabra "Python" en el texto.') #41: Utilizando la función `compile` para buscar # una dirección de correo electrónico en un texto. import re patron = re.compile(r'\b[\w.-]+@[\w.-]+\.\w{2,}\b') texto = 'Mi dirección de correo electrónico es ejemplo@gmail.com.' resultado = patron.search(texto) if resultado: print('Se encontró una dirección de correo electrónico en el texto.') else: print('No se encontró una dirección de correo electrónico en el texto.') #42: Utilizando la función `compile` para buscar números de teléfono en un texto. import re patron = re.compile(r'\b\d{3}-\d{3}-\d{4}\b') texto = 'Mi número de teléfono es 123-456-7890.' resultado = patron.search(texto) if resultado: print('Se encontró un número de teléfono en el texto.') else: print('No se encontró un número de teléfono en el texto.') #43: Utilizando la función `compile` para buscar fechas en un texto. import re patron = re.compile(r'\b\d{1,2}/\d{1,2}/\d{4}\b') texto = 'La fecha de hoy es 6/7/2023.' resultado = patron.search(texto) if resultado: print('Se encontró una fecha en el texto.') else: print('No se encontró una fecha en el texto.') #44: Utilizando la función `compile` para buscar palabras #que empiezan con una letra mayúscula en un texto. import re patron = re.compile(r'\b[A-Z]\w*\b') texto = 'El lenguaje de programación Python es muy popular.' resultado = patron.findall(texto) if resultado: print('Se encontraron palabras que empiezan con una letra mayúscula en el texto.') else: print('No se encontraron palabras que empiezan con una letra mayúscula en el texto.') #45: Utilizando la función `purge` para limpiar #la caché de expresiones regulares compiladas. import re patron1 = re.compile(r'\d+') patron2 = re.compile(r'\w+') re.purge() # Limpia la caché de expresiones regulares compiladas texto = 'La casa tiene 3 habitaciones y 2 baños.' resultado1 = patron1.findall(texto) resultado2 = patron2.findall(texto) print(resultado1) # Salida: ['3', '2'] print(resultado2) # Salida: ['La', 'casa', 'tiene', '3', 'habitaciones', 'y', '2', 'baños']

Geogebra Python