Buenos días para todos. Estoy empezando a trabajar con expresiones regulares en php. Tengo una cadena del tipo "Wed, 30 jul 2008 09:00:00 -03:00" y quiero transformarla en "Wed, 30 jul 2008 09:00". Este es mi código:
Código:
$cadena = "Wed, 30 jul 2008 09:00:00 -03:00";
$patron = "-[[:digit:]]{2}\:[[:digit:]]{2}";
$cadena = ereg_replace($patron,"",$cadena);
$patron = "([[:digit:]]{2}\:[[:digit:]]{2})\:[[:digit:]]{2}";
$cadena = ereg_replace($patron,"\1",$cadena);
echo($cadena);
El primer reemplazo (me elimina la hora GMT) funciona correctamente. En el segundo reemplazo agrupo la hora y los minutos, y dejo fuera de este grupo a los segundos. Luego, al ejecutar ereg_replace() quiero que me sustituya la coincidencia por este grupo, pero no encuentro forma de lograrlo. Probe con "1", "$1" y "\1" y no se me ocurre de que otra forma puede ser. Lo único que hace es reemplazarme la coincidencia exactamente por esos valores, y no por el grupo al que quiero hacer referencia. ¿Alguna idea de como hacerlo?. Saludos a todos.