Foros del Web » Programando para Internet » PHP »

expresion regular: tomar subcadena entrecomillada

Estas en el tema de expresion regular: tomar subcadena entrecomillada en el foro de PHP en Foros del Web. Hola, Si tengo la variable de texto: $criterio="codigo='pepe.hotmail.com' ". Quiero tomar el contenido que está entre las comillas simples: pepe.hotmail.com Debo hacerlo usando expresiones regulares ...
  #1 (permalink)  
Antiguo 21/07/2006, 11:00
Avatar de txus35  
Fecha de Ingreso: mayo-2005
Mensajes: 42
Antigüedad: 18 años, 11 meses
Puntos: 0
expresion regular: tomar subcadena entrecomillada

Hola,
Si tengo la variable de texto: $criterio="codigo='pepe.hotmail.com' ".

Quiero tomar el contenido que está entre las comillas simples: pepe.hotmail.com

Debo hacerlo usando expresiones regulares con eregi (no me valen los explodes pq no funcionan con otras variables). No termino de sacar la expresión regular correcta para tal fin.

He probado sin éxito con:
if (eregi("[^'*'$]", $criterio, $arr_apariciones ) ) {
echo "XXX: $arr_apariciones[3].$arr_apariciones[2].$arr_apariciones[1]";
} else {
echo "Invalid date format: $criterio";
}
¿Alguien podría ayudarme?. Un saludo a todos.
  #2 (permalink)  
Antiguo 21/07/2006, 11:26
Avatar de mauled  
Fecha de Ingreso: marzo-2005
Ubicación: Cd. de México.
Mensajes: 3.001
Antigüedad: 19 años, 1 mes
Puntos: 33
De acuerdo

Pues esto lo podrias resolver con la funcion explode().

Saludillos.
  #3 (permalink)  
Antiguo 02/08/2006, 03:59
Avatar de txus35  
Fecha de Ingreso: mayo-2005
Mensajes: 42
Antigüedad: 18 años, 11 meses
Puntos: 0
sos

Gracias Mauled,
La opción de los "explodes" es buena pero implica más lineas de código y pienso que es menos elegante.
Necesitaría una expresión regular que validase cualquier número o texto entrecomillado (entre comillas simples o dobles). Pienso que es sencillo pero no termino de dar con ella.
Cualquier ayuda será bienvenida.
Un saludo a todos.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:36.