Hola a t...@s: Con este correo pretendo cerrar el hilo sobre expresiones regulares (ER), que yo mismo abrí, con unas pequeñas conclusiones. ¡Ahí van! 1. Las ER no es un asunto baladí. Son muy potentes pero hay que aprender a utilizarlas y, desde mi punto de vista, no es fácil. 2. Existen muchas herramientas que utilizan ER, sobre todo en el mundo Linux/Unix, pero existen variantes que provocan que una misma ER no funcione igual en dos herramientas diferentes. He encontrado algunas tablas (mundo Unix) en donde se detallan mandatos y que ER son capaces de tratar. 3. Hay dos tipos de ER, las básicas y las extendidas. En regcomp() hay un parámetro donde se puede indicar. Aunque no tengo claro donde está la diferencia, durante mis pruebas, las ER utilizadas siempre funcionaron mejor con la opción extendida. Así, he decido que siempre utilizaré éstas. 4. En algún artículo he leído que en i5/OS podrían no funcionar bien porque el CCSID del trabajo no coincida con 37. Para compatibilizar, se recomienda transformar tanto el patrón como los datos a buscar al CCSID 37 empleando iconv(). También he hecho pruebas con esto (en mi caso CCSID 284) NO HAN SIDO SATISFACTORIAS. Por ejemplo, la conversión de la ER AFP[^1-9] se convierte en AFP^¢1-9! y, por tanto, regcomp() genera un error. No sé si esto cambia en otras versiones, pero en V5R4 creo que no es necesario este tipo de conversión. 5. Por último, recomiendo a todos el aprender a utilizar ER. Primero porque se utilizan mucho en utilidades del mundo Unix/Linux y en nuestro i5/OS tenemos QSHELL y PASE. Segundo, porque se utilizan en PHP, Perl, Java y otros lenguajes de programación Web. Tercero, porque son una estupenda herramienta para buscar cadenas de caracteres complejas, es más, son un gran complemento al %SCAN y %REPLACE del RPG. Yo, como primer uso, las voy a utilizar para validar direcciones de correo electrónico. Hasta la próxima. Javier Mora
__________________________________________________ Forum.HELP400 es un servicio más de ServerNEWS. © Publicaciones Help400, S.L. - Todos los derechos reservados http://www.help400.es _____________________________________________________
Para darte de baja visita la siguente URL: http://listas.combios.es/mailman/listinfo/forum.help400