tengo esta sencilla exprecion regular
Citarr'^adoptar|se_busca|perdido/(\d+)/[-_A-Za-z0-9]*/$'
necesito que funciones asi
adopar/1/gatito
se_busca/2/perrito
perdido/4/cotorro
el problema es que solo funciona la ultima... por que no estan englobadas las opciones
Citarr'^(adoptar|se_busca|perdido)/(\d+)/[-_A-Za-z0-9]*/$'
el poblema es que el metodo que recibe es un poco quisquilloso con los parametros... y si lo pongo entre parentesis se pasara como parametro, cuando no lo es.
asi que no se como engobar esas opciones.. ya probe con [] pero lo busca como caracteres..
¿En qué las estás probando?
Acabo de probar las expresiones con el comando grep y funcionan:
cat ex.txt
adopar/1/gatito
se_busca/2/perrito
perdido/4/cotorro
[0 [00:02][leo@leo-Satellite-L305 Desktop]$ cat ex.txt | grep -E "^(adopar|se_busca|perdido)/[0-9]+/(gatito|perrito|cotorro)$"
adopar/1/gatito
se_busca/2/perrito
perdido/4/cotorro
PD: Es "expresión", no "exprecion".
o no la exprecion funciona! (programo en python y django)
entonces tengo una lista de urls
url( r'^(adoptar|se_busca|perdido)/(\d+)/[-_A-Za-z0-9]*/$', buscador )
y un metodo
def buscador(request,id):
pass
el problema es que en el metodo estoy reciviendo 1 parametro id (el request, se pasa solo)
pero en la url con esa exprecion estoy pasando 2 parametros.. (todo lo que este en parentesis se pasa como parametro) entonces debo quitar los parensis de (adoptar|se_busca|perdido) para que se pase correctamente al metodo.
pero al quitarlos deja de funcionar.. XD
ahi una solucion simple que es cambiar el metodo
def buscador(request,tipo,id) y no usar la variable tipo...
es solo que no me gusta ese tipo de parches, y pefiero encontrar la forma correcta de la exprecion regular
Cita de: Kase en 13 Agosto 2012, 10:33 AM
entonces tengo una lista de urls
Podrias pasarme una url como ejemplo?
Es para prober nada mas.