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

Responder a