Ver Mensaje Individual
  #1 (permalink)  
Antiguo 06/07/2009, 19:33
Avatar de SI TAN SOLO TUVIERA
SI TAN SOLO TUVIERA
 
Fecha de Ingreso: marzo-2006
Ubicación: Aburrilandia, US
Mensajes: 652
Antigüedad: 18 años, 8 meses
Puntos: 3
Ayuda con Mod Rewrite, Expresiones Regulares y los guiones

Hola. Busco por favor ayuda de alguien que domine muy bien las expresiones regulares.

Resulta que generalmente el " - " es como el separador de variables a la hora de imprimir una URL con Mod Rewrite. Mi problema es, si dentro del valor de una variable existe este guión, se trunca todo.

En palabras prácticas, digamos que quiero imprimir amigablemente una URL que lee dos variables, por ejemplo:

http: // www. dominio.com/index.php?nombre=Fulatino&apellido=Perez

Se imprimiría así:

http://www.dominio.com/Fulatino-Perez.htm usando un Mod Rewrite sencillo como:

Cita:
RewriteRule (.*)-(.*)\.htm$ index.php?nombre=$1&apellido=$2 [L]
Mi problema es:

Si alguna de estas dos variables (nombre o apellido) tiene el guión dentro del valor de su string, se jode todo.

O sea, si quisiera imprimir el nombre, por ejemplo: Pedro Da-Vinci el Mod Rewrite va tomar a la variable "apellido" como "Da" y no "Da-Vinci", en este caso, y obviamente no va encontrar nada cuando busque en la base de datos.

Mi pregunta del millón ahora es:

Cómo le hago con Mod Rewrite y las expresiones regulares para decirle que, si dentro del valor de la variable encuentra el "-" lo tome como parte del valor de la variable y no como el separador de variables?

Si alguien sabe le quedo infinitamente agradecido, llevo mucho rato lidiando con ésto y naranjas de nada. Ensayé cosas como:

Cita:
RewriteRule ([a-z0-9_-]*)-([a-z0-9_-]*)\.htm$ index.php?nombre=$1&apellido=$2 [L]
Pero no me sirvieron

Les agradezco cualquier ayuda!!
__________________
¿Dónde encontrar carros baratos en USA? En Autopten.

Última edición por SI TAN SOLO TUVIERA; 06/07/2009 a las 19:47