[bcn-pm] regexp dinamico

Xavier Pegenaute xpegenauteatelepolis.es
Dij Jul 5 06:40:54 PDT 2007


Hola,

quiero hacer una cosilla que no estoy seguro de que se pueda hacer, a 
ver si soy capaz de explicarlo :-).

Tengo un listado de lineas de texto, por ejemplo "45     78     XXXXX", 
donde las X se substituyen por un texto.

Mediante un fichero de configuración defino que partes de la linea me 
interesan.

En este fichero de configuración cada linea tiene una cadena de matching 
en regexp y los grupos del regexp que me interesan, y en orden, por ejemplo:

linea_1_del_cfg: regexp:"^(\d+)\s+(\d+)\s+(Test1)"     grupos:"$2:$1:$3"
linea_2_del_cfg: regexp:"^(\d+)\s+(\d+)\s+(Test2)"     grupos:"$3:$2:$1"

Para hacer el matching no tengo problema porque pongo directamente la 
cadena entre los m/.../, el problema viene con los grupos, por que al 
leerlo y ponerlo en una variable, obviamente no hace lo que yo quiero :-):

    if($linea =~ m/$matching/){
        $datos = $varlocal
    }

Como podría solucionarlo?

Muchas gracias.
Xavi.


Més informació de la llista de correu Barcelona-pm