Python - Librería RE

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

Information: Python - Librería RE