elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Curso de javascript por TickTack


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  exprecion regular.... n__n
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: exprecion regular.... n__n  (Leído 2,288 veces)
Kase


Desconectado Desconectado

Mensajes: 1.288


programa bonito ¬¬


Ver Perfil WWW
exprecion regular.... n__n
« en: 13 Agosto 2012, 07:35 am »

tengo esta sencilla exprecion regular

Citar
r'^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

Citar
r'^(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 línea

leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
***
Desconectado Desconectado

Mensajes: 3.069


/^$/


Ver Perfil WWW
Re: exprecion regular.... n__n
« Respuesta #1 en: 13 Agosto 2012, 08:02 am »

¿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

Código:
[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".


« Última modificación: 13 Agosto 2012, 08:26 am por Leo Gutiérrez. » En línea

Código
  1. (( 1 / 0 )) &> /dev/null || {
  2. echo -e "stderrrrrrrrrrrrrrrrrrr";
  3. }
  4.  
http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com
Kase


Desconectado Desconectado

Mensajes: 1.288


programa bonito ¬¬


Ver Perfil WWW
Re: exprecion regular.... n__n
« Respuesta #2 en: 13 Agosto 2012, 10:33 am »

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
En línea

sistemx

Desconectado Desconectado

Mensajes: 48


Ver Perfil
Re: exprecion regular.... n__n
« Respuesta #3 en: 19 Agosto 2012, 06:48 am »


entonces tengo una lista de urls

Podrias pasarme una url como ejemplo?
Es para prober nada mas.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Xml o Expreción Regular?
PHP
LeandroA 1 2,201 Último mensaje 24 Marzo 2009, 23:20 pm
por Pablo Videla
Ayuda con Exprecion Regular Serie Numerica
Java
cyberserver 4 4,839 Último mensaje 31 Diciembre 2010, 19:55 pm
por cyberserver
Exprecion regular.. letras-numero guines y guines bajos..
Programación General
Kase 7 11,465 Último mensaje 23 Agosto 2011, 14:38 pm
por raul338
Mostrar caracter exprecion ( ¡ ) error mio. borrar este tema y disculpen
.NET (C#, VB.NET, ASP)
70N1 1 2,175 Último mensaje 26 Enero 2012, 16:26 pm
por 70N1
mal tipo de exprecion!!!
Foro Libre
jose_white 7 2,631 Último mensaje 14 Enero 2013, 16:00 pm
por jose_white
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines