next up previous contents
Next: Advertencia sobre la limpieza Up: Activando el reporte de Previous: Detectando datos sucios   Contents

Limpiando datos sucios

Muy bien, sabemos de qué debemos cuidarnos. Ahora, ¿cómo podemos marcar un valor como limpio? La respuesta corta es que no podemos. La respuesta larga es que Perl nos permite extraer información respecto a un valor por medio de las instrucciones. Esto puede hacerse a través de las variables de substitución:

$datos = <STDIN>; # Los datos vienen de fuera y están sucios

if ( $datos = /([\w\b\d]+)$/ ) { # Acepta sólo el patrón que esperamos

    $datos_limpio = $1; # $1 contiene el texto que coincidió con la expresión

} else {

    die ``No esperaba que me dijeras $datos'';

}

En este ejemplo, $datos sigue teniendo datos sucios. De hecho, tal vez podríamos preferir que la última línea guardara los resultados en la variable de origen.



Gunnar Wolf 2002-05-20