Problema expresiones regulares

Iniciado por luiggy2, 8 Noviembre 2012, 00:52 AM

0 Miembros y 1 Visitante están viendo este tema.

luiggy2

Buenas!

Estoy haciendo una aplicación que trabaja con urls, para lo cual necesito detectar si una cadena aparece en una url o no. Me explico mejor:

Quiero detectar si la url no empieza por /js/ ni /images/ ni /ps/ ni /css/, para lo cual estoy intentando hacer esto:

!( (^[/js/]) | (^[/css/]) | (^[/images/]) | (^[/ps/]) )

el problema es que no se por que no me funciona, pero si pongo:

!( (^[/js/]) | (^[/css/]) )

sí me funciona

¿alguna idea?

Gracias!
" Las grandes ideas suelen salir la mayoría de veces de grandes estupideces "

raul338

Que estas usando para probar las expresiones regulares? Lo pruebo con regexbuddy y no me funciona D:

Por lo que veo y hago mentalmente, porque usas los corchetes? si pones "sj" no te lo invalida tambien? ponlo sin los corchetes y deberia funcionar

luiggy2

Muchas gracias por la respuesta, pero he estado dandole vueltas esta noche y he encontrado otra forma.
Aquí la dejo por si a alguien le sirve:

^(((?!js/|css/|images/|ps/).*))

Un saludo!
" Las grandes ideas suelen salir la mayoría de veces de grandes estupideces "