Autor Tema: ER para saber si una palabra cumpla ciertas condiciones.  (Leído 1276 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Daniel1952

  • PIC16
  • ***
  • Mensajes: 127
ER para saber si una palabra cumpla ciertas condiciones.
« en: 29 de Octubre de 2021, 18:41:49 »
Bueno eso, queria saber y conocer algún ej. Con expresiones regulares para lograr lo mismo.

Supongamos un ejemplo en el que queremos comprobar si una determinada palabra cumple las siguientes condiciones:
• Su longitud total sea mayor que 4.
• Que empiece con una  “p”.
• Que contenga al menos, una “y”.

Código: Python
  1. palabra = "python"
  2. if len(palabra) > 4 and palabra.startswith('p') and palabra.count('y') >= 1:
  3.     print("Todo ok")
  4. else:
  5.     print("Algo no coincide")

Otra manera.

Código: Python
  1. palabra = "python"
  2.  
  3. longitud = len(palabra) > 4
  4. inicio = palabra.startswith('p')
  5. contiene = palabra.count('y') >= 1
  6.  
  7. correcto = all([longitud, inicio, contiene])
  8. if correcto:
  9.     print("todo ok")
  10. else:
  11.     print("algo no coincide")
   
Desde ya gracias y un poco los extrañaba, slds, Daniel.
abraza las cosas y personas malas como si fueran tu mas preciada joya,Son tus mas grandes maestros de paciencia sabiduría y amor y cuando lo abrazas dejan de causar dolor.-

Desconectado Picuino

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 5892
    • Picuino
Re:ER para saber si una palabra cumpla ciertas condiciones.
« Respuesta #1 en: 30 de Octubre de 2021, 08:00:34 »
¿Este programa te vale?

Código: Python
  1. import re
  2.  
  3. palabra = "python"
  4.  
  5. if re.match('p\w{4}', palabra) and 'y' in palabra:
  6.     print('Todo Ok')
  7. else:
  8.     print('Algo no coincide')

\w es cualquier letra
{4} obliga a encontrar exactamente 4 letras (más la p inicial ya son cinco)
« Última modificación: 30 de Octubre de 2021, 08:02:48 por Picuino »

Desconectado Daniel1952

  • PIC16
  • ***
  • Mensajes: 127
Re:ER para saber si una palabra cumpla ciertas condiciones.
« Respuesta #2 en: 31 de Octubre de 2021, 20:20:18 »
Gracias picuino, me queda la tarea de descartar el and y poner la “y” como parte del ER, lo voy a intentar, gracias.-
abraza las cosas y personas malas como si fueran tu mas preciada joya,Son tus mas grandes maestros de paciencia sabiduría y amor y cuando lo abrazas dejan de causar dolor.-

Desconectado Picuino

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 5892
    • Picuino
Re:ER para saber si una palabra cumpla ciertas condiciones.
« Respuesta #3 en: 01 de Noviembre de 2021, 09:04:48 »
No es sencillo lo que quieres hacer y tampoco es práctico. Como está ya funciona.
Asegurar una longitud de 5 cararcteres a la vez que cualquiera de ellos debe ser una 'y' no se si se puede hacer con expresiones regulares de forma sencilla. Yo nunca me he encontrado con tener que poner una condición así. Lo mejor es buscar problemas prácticos y dedicarte a ellos.

posible solución nada sencilla:
if re.match('p(y\w{3}|\wy\w\w|\w\wy\w|\w{3}y)', palabra):

Desconectado Daniel1952

  • PIC16
  • ***
  • Mensajes: 127
Re:ER para saber si una palabra cumpla ciertas condiciones.
« Respuesta #4 en: 01 de Noviembre de 2021, 11:11:53 »
Hola picuino, muchas gracias x tus consejos, ahora me atrevo a darte uno yo, cuando (como en este caso) notes que estoy “delirando” directamente ignorarme y lo voy a saber comprender, en muchos actos de mi vida me a ocurrido que intento construir una casa intentando poner el techo antes que el cimiento y las paredes, cosas de la vida.
Les deseo a todos un bello bello día desde Argentina. :) :) :)
abraza las cosas y personas malas como si fueran tu mas preciada joya,Son tus mas grandes maestros de paciencia sabiduría y amor y cuando lo abrazas dejan de causar dolor.-

Desconectado Picuino

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 5892
    • Picuino
Re:ER para saber si una palabra cumpla ciertas condiciones.
« Respuesta #5 en: 01 de Noviembre de 2021, 15:23:23 »
No creo que estés "delirando" ni mucho menos. Es frecuente hacer ejercicios así cuando uno aprende un lenguaje.
Debo ser yo, que no sé como responder bien a la pregunta. Mucho ánimo con el aprendizaje.

Desconectado Daniel1952

  • PIC16
  • ***
  • Mensajes: 127
Re:ER para saber si una palabra cumpla ciertas condiciones.
« Respuesta #6 en: 01 de Noviembre de 2021, 17:32:07 »
Gracias, gracias, muchas gracias...
abraza las cosas y personas malas como si fueran tu mas preciada joya,Son tus mas grandes maestros de paciencia sabiduría y amor y cuando lo abrazas dejan de causar dolor.-


 

anything