Hola, estoy practicando con preg_match y sus expresiones regulares para validar o extraer datos de una url. He conseguido que me la valide pero no consiguo que me muestre el último valor.
Codigo
Código PHP:
$cadena=$_GET['enlace'];
$patron1= '/^(http(s)?:\/\/)?(www\.)?[0-9A-Za-z]+(\.)+(com)+((\.|\/|\?=)+[0-9A-Za-z]+)?/';
$patron2= '/^(http(s)?:\/\/)?(www\.)?[0-9A-Za-z]+(\.)+(com)+(\/)+(\?)+[A-Za-z]{1}+(\=)+[0-9A-Za-z]+/';
if(preg_match($patron2,$cadena, $coincidencias)){
echo "bien \n";
echo "La URL es: {$coincidencias[0]} \n";
echo "El archivo es: {$coincidencias[9]}\n";
}else{
echo"no";
}
URL prueba: http://www.megaupload.com/?d=0TNJIKG6
El resultado que me da es:
bien La URL es: http://www.megaupload.com/?d=0TNJIKG6 El archivo es:[NO PONE NADA]
Lo que estoy intentando es que me muestre este apartado 0TNJIKG6 de la url. He probado poniendo $coincidencias[10] pero sigue sin mostrarme nada.
Gracias