Foros del Web » Programando para Internet » PHP »

Operaciones con explode

Estas en el tema de Operaciones con explode en el foro de PHP en Foros del Web. Hola amigos como estais, Vereis tengo que cortar una cadena al llegar al codigo "src=" para cojer entera la direccion de las imagenes la cosa ...
  #1 (permalink)  
Antiguo 14/04/2011, 12:17
 
Fecha de Ingreso: marzo-2007
Mensajes: 751
Antigüedad: 17 años, 1 mes
Puntos: 4
Operaciones con explode

Hola amigos como estais,


Vereis tengo que cortar una cadena al llegar al codigo "src=" para cojer entera la direccion de las imagenes la cosa es que las imagenes algunas veces estan escritas con comillas dobles o simples o son jpg, png o gif.

El codigo que tengo para esto es muy simple:



list($one, $two) = explode("src=", $item->description);

list($one1, $two1)= explode(".jpg", $two);

echo $one1.'<hr />';

En donde $one1 contendria la url de la imagen sin su formato ".jpg"


la cosa es que si en vez de ser .jpg fuese .gif por ejemplo no lo cortaria, lo idea seria si puediese comprobar las dos y si coincide con una cortase.

A ver si a alguien se le ocurre como se podria hacer esto.


Un saludo amigos
  #2 (permalink)  
Antiguo 14/04/2011, 12:36
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Operaciones con explode

expresiones regulares
http://www.forosdelweb.com/f18/aport...s-pcre-646110/
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 14/04/2011, 13:06
 
Fecha de Ingreso: marzo-2007
Mensajes: 751
Antigüedad: 17 años, 1 mes
Puntos: 4
Respuesta: Operaciones con explode

Hola amigo pateketrueke, he leido el post

Por lo que entiendo con preg_match_all


Se podrian buscar las cadenas que queramos entonces si quiesemos buscar extensiones seria algo asi?

$extensiones = 'perro.jpg o pato.gif ';

preg_match_all('.jpg .gif .png ', $str, $tmp);

En donde $tmp contendria la extension que encontrase y ya con:

explode("$tmp", $item->description);

Cortaria la cadena es cierto amigo? o estoy equivocado en alguna parte?
  #4 (permalink)  
Antiguo 14/04/2011, 13:09
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Operaciones con explode

pues, de hecho, no se si decir equivocado sea políticamente correcto, pero si, lo estás...

el tema de expresiones regulares es bastante amplio, pero si lo estudias con calma puede conseguir cosas interesantes...

por ejemplo:
Cita:
/src="(.+?)"/
con esa expresión obtendrías justo lo que necesitas, sin necesidad de hacer tanto código, claro que la expresión no funciona por si sola... para eso deberás estudiar lo suficiente para conseguirlo!!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 14/04/2011, 13:19
 
Fecha de Ingreso: marzo-2007
Mensajes: 751
Antigüedad: 17 años, 1 mes
Puntos: 4
Respuesta: Operaciones con explode

Gracias amigo por la clase sobre este tema me esta sirviendo de mucho,

Sole me gustaria saber que significa "(.+?)" no acabo a comprender, es una expresion predefinida que quiere decir lo que estadentro de "" o puede ser cualquier otra combinacion de caracteres?

Acabo de probar este codigo:

preg_match_all('/src=(.+?)/', $item->description, $tmp);

$out = print_r($tmp, true);

pero es me da como resultado en el array "src=' "

No la url

Un saludo amigo y muchas gracias por la horientacion.

Última edición por franjgg; 14/04/2011 a las 13:24
  #6 (permalink)  
Antiguo 14/04/2011, 13:52
 
Fecha de Ingreso: marzo-2007
Mensajes: 751
Antigüedad: 17 años, 1 mes
Puntos: 4
Respuesta: Operaciones con explode

La idea final seria conseguir la url completa de un texto como este por ejemplo:

El Ministerio de Cultura archivará todos los procedimientos infractores que se dirijan contra las páginas webs que permitan la descarga no autorizadas de archivos protegidos por derechos de autor si los administradores de esas web retiran en el plazo de 48 horas los enlaces o los contenidos que hayan sido denunciados por los titulares de los derechos.<p><img src='http://www.elpais.com/recorte/20100526elpepicul_3/XLCO/Ies/Cultura_archivara_denuncias_web_descargas_retiren_ enlaces_48_horas.jpg'/></p>

Etiquetas: explode, operaciones
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 04:28.