¿Esperabas "1000" pero tu usuario escribe "$1,000.00"?
¡Hola!, estamos a unos cuantos días de celebrar una de las fechas más populares en todo el mundo que es el Halloween. Adicionalmente, en México se celebra el 1 y 2 de noviembre "El día de muertos", una tradición milenaria donde se acostumbra poner una ofrenda e ir al cementerio a hacer una visita.
Y también, en estas fechas a muchos nos gusta ver películas y escuchar historias de terror. Imagínate la peor historia de terror para contar en la noche (apaga la luz antes de leer esta historia): Resulta que tu vida era feliz y en ascenso, cuando de repente, una epidemia surge de un país lejano y llega a tu ciudad, enfermando a millones y matando a miles, entonces, el gobierno te ordena encerrarte en tu casa, sin poder salir, ¡durante meses!, ¿Qué haces tanto tiempo metido en tu casa?, cuando te aburres y decides salir: Todo está cerrado, así que no hay nada más que hacer, y por si fuera poco, te despiden de tu trabajo debido a que la empresa está a punto de declararse en bancarrota. ¡Pero espérate!, cuando ya pensabas que tu pesadilla iba a terminar, entonces comienzan a anunciar un nuevo confinamiento global..., !Uff! solo de pensarlo se me pone la piel de gallina, mejor hablemos de cosas más productivas.
Ya está disponible la sección "Expresiones Regulares", una librería que se utiliza para buscar patrones de texto.
Como bien sabes, cada día es más importante la productividad de un programador. La mayoría de los desarrollos de software se cotizan en base a estimación de tiempos, si el equipo se demora más que lo estimado, entonces su empresa tendrá que pagar más tiempo de salarios, pero recibirá la misma cantidad por el proyecto, así que ¡el tiempo es dinero!. ¿Qué empresa querría contratar a alguien que se tardará una semana en hacer los algoritmos más simples?.
Y dicho esto, ¿Cómo harías que tu programa pregunte por un correo electrónico y compruebe que es válido?, no necesariamente que el correo exista, pero que al menos tenga el formato correcto. ¿Cómo validarías un número de tarjeta de crédito?, ¿un número telefónico?, o un caso muy común: Tu programa le pregunta al usuario que ingrese una cantidad de dinero, esperando que la respuesta sea: "1000", pero, ¡oh sorpresa!, resulta que el usuario escribió: "$1,000.00", ¿le vas a decir que está mal?.
Podrías dedicar muchos días a resolver estos simples problemas, pero usando expresiones regulares, puedes hacer el mismo trabajo en minutos, y lo mejor es que toda la información básica para usar expresiones regulares ya esta disponible en El Camino de Java, Volumen 2.
Sinceramente,
Raúl Cosío