Python - Python expresiones regulares

   
Vista:

Python expresiones regulares

Publicado por Alejandro Perez (1 intervención) el 11/02/2014 00:58:53
Hola amigo quisiera que me ayuden con el siguiente codigo.

1
2
3
4
5
6
7
8
9
10
def _var(self, linea):
        regex = '(\\{(\\$(?:[a-z][a-z0-9_]*))\\})'
        rg = re.compile(regex ,re.IGNORECASE | re.DOTALL)
        m = rg.search(linea)
        if m:
            txt = re.sub(regex ,r'<?php echo \g<2>; ?>', linea)
            print txt
            return txt
        else:
            return linea

El objetivo del siguiente codigo es que busque en una linea de texto que se lo paso como parametro y busque todas las expresiones que coincidan con {$variable}.
y la retorne como <?php echo $variable; ?>
el problema es que no lo hace.
y según tengo el codigo no veo error.

desde ya gracias de antemano.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve

Python expresiones regulares

Publicado por xve (1229 intervenciones) el 11/02/2014 07:58:52
Hola Alejandro, lo tienes hecho, pero creo que te has liado un poco...
Quitando algunas de tus lineas, me ha funcionado perfectamente...

1
2
3
4
5
6
7
8
import re
 
def _var(linea):
    regex = '(\\{(\\$(?:[a-z][a-z0-9_]*))\\})'
    txt = re.sub(regex ,r'<?php echo \g<2>; ?>', linea)
    return txt
 
print _var("la variable {$variable} tiene un valor erroneo");
Devulve:
la variable <?php echo $variable; ?> tiene un valor erroneo

Coméntanos, ok?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar