Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] [PROBLEMA] Reemplazar cadena

Estas en el tema de [PROBLEMA] Reemplazar cadena en el foro de PHP en Foros del Web. Hola a todos. Me gustaría ser capaz de reemplazar una cadena de texto quedándome con parte del contenido, les dejo un ejemplo para que me ...
  #1 (permalink)  
Antiguo 17/11/2014, 13:43
 
Fecha de Ingreso: marzo-2012
Mensajes: 47
Antigüedad: 12 años, 1 mes
Puntos: 0
Pregunta [PROBLEMA] Reemplazar cadena

Hola a todos.

Me gustaría ser capaz de reemplazar una cadena de texto quedándome con parte del contenido, les dejo un ejemplo para que me entiendan mejor:

Cadena inicial:
Código HTML:
<a href="http://www.google.com/imagen.jpg" target="_blank"><img src="http://www.google.com/imagen.jpg" alt="Imagen" /></a> 
Y me gustaría que con alguna función de php quedase de la siguiente forma:
Código HTML:
<img src="http://www.google.com/imagen.jpg" alt="Imagen" /> 
¿Cómo podría quedarme con la url de la imagen?

Gracias de antemano.
Saludos
  #2 (permalink)  
Antiguo 17/11/2014, 17:54
 
Fecha de Ingreso: febrero-2012
Ubicación: Barranqueras
Mensajes: 35
Antigüedad: 12 años, 2 meses
Puntos: 2
Respuesta: [PROBLEMA] Reemplazar cadena

Cita:
Iniciado por jetemias Ver Mensaje
Hola a todos.

Me gustaría ser capaz de reemplazar una cadena de texto quedándome con parte del contenido, les dejo un ejemplo para que me entiendan mejor:

Cadena inicial:
Código HTML:
<a href="http://www.google.com/imagen.jpg" target="_blank"><img src="http://www.google.com/imagen.jpg" alt="Imagen" /></a> 
Y me gustaría que con alguna función de php quedase de la siguiente forma:
Código HTML:
<img src="http://www.google.com/imagen.jpg" alt="Imagen" /> 
¿Cómo podría quedarme con la url de la imagen?

Gracias de antemano.
Saludos
Hola Jetemias
Algo asi te sirve?

Código:
<?php 
$texto = 'laveronicaquiereunfoquitoparece'; 
$maximo = strlen($texto); 
$string = substr($texto,10,$maximo); 
echo $string;
?>
Esto da como resultado: quiereunfoquitoparece
__________________
Porque no dejas esa computadora y salis a divertirte?
Porque programar es divertido...
  #3 (permalink)  
Antiguo 18/11/2014, 03:43
 
Fecha de Ingreso: marzo-2012
Mensajes: 47
Antigüedad: 12 años, 1 mes
Puntos: 0
Respuesta: [PROBLEMA] Reemplazar cadena

Cita:
Iniciado por martin_zalazar Ver Mensaje
Hola Jetemias
Algo asi te sirve?

Código:
<?php 
$texto = 'laveronicaquiereunfoquitoparece'; 
$maximo = strlen($texto); 
$string = substr($texto,10,$maximo); 
echo $string;
?>
Esto da como resultado: quiereunfoquitoparece
Hola martin_zalazar.

No me sirve, quisiera usar expresiones regulares para solventar el problema. Les cuento un poco más para ponerles en contexto.

Parto de una cadena de texto, donde entre sus caracteres, tengo la estructura de mi mensaje anterior
Código HTML:
<a href="http://www.google.com/imagen.jpg" target="_blank"><img src="http://www.google.com/imagen.jpg" alt="Imagen" /></a> 
el caso, es que quiero quedarme con todo el texto, y eliminar los enlaces de las imágenes.

Conozco la siguiente sentencia:
Código PHP:
preg_match_all("|<a href="(.*)" target="_blank"><img src="(.*)" alt="(.*)" /></a>|sU"$cadenaTexto$resultado); 
Pero no se como reemplazar luego los resultados obtenidos, (pueden venirme de 0 a N)

Saludos

EDIT: Les pongo un ejemplo de la entrada y de la salida:
Código entrada:
Ver original
  1. Esto es un texto completo el cual contiene varias imágenes del tipo: <a href="http://www.google.com/imagen.jpg" target="_blank"><img src="http://www.google.com/imagen.jpg" alt="Imagen" /></a><br /><a href="http://www.google.com/imagen.jpg" target="_blank"><img src="http://www.google.com/imagen.jpg" alt="Imagen" /></a>

La salida debería ser la siguiente:
Código entrada:
Ver original
  1. Esto es un texto completo el cual contiene varias imágenes del tipo: <img src="http://www.google.com/imagen.jpg" alt="Imagen" /><br /><img src="http://www.google.com/imagen.jpg" alt="Imagen" />

Última edición por jetemias; 18/11/2014 a las 03:50
  #4 (permalink)  
Antiguo 19/11/2014, 13:47
 
Fecha de Ingreso: marzo-2012
Mensajes: 47
Antigüedad: 12 años, 1 mes
Puntos: 0
De acuerdo Respuesta: Reemplazar cadena

Hola de nuevo, os dejo la solución por si le hace falta a alguien:

Código PHP:
preg_match_all('|<a href="(.*)" target="_blank"><img src="(.*)" alt="(.*)" /></a> |sU'$cadena$resultadosImagenes);
        
        for (
$cont=0$cont sizeof($resultadosImagenes[1]); $cont++) {
            
$cadenaBuscar '|<a href="'.$resultadosImagenes[1][$cont].'" target="_blank"><img src="'.$resultadosImagenes[2][$cont].'" alt="'.$resultadosImagenes[3][$cont].'" class="bbCodeImage" /></a>|sU';
            
$cadenaReemplazo "<img src='".$resultadosImagenes[2][$cont]."' alt='".$resultadosImagenes[3][$cont]."' />";
            
$cadena preg_replace($cadenaBuscar$cadenaReemplazo$cadena);
        } 
Saludos
  #5 (permalink)  
Antiguo 19/11/2014, 13:48
 
Fecha de Ingreso: marzo-2012
Mensajes: 47
Antigüedad: 12 años, 1 mes
Puntos: 0
Respuesta: Reemplazar cadena

Cita:
Iniciado por jetemias Ver Mensaje
Hola de nuevo, os dejo la solución por si le hace falta a alguien:

Código PHP:
preg_match_all('|<a href="(.*)" target="_blank"><img src="(.*)" alt="(.*)" /></a> |sU'$cadena$resultadosImagenes);
        
for (
$cont=0$cont sizeof($resultadosImagenes[1]); $cont++) {
    
$cadenaBuscar '|<a href="'.$resultadosImagenes[1][$cont].'" target="_blank"><img src="'.$resultadosImagenes[2][$cont].'" alt="'.$resultadosImagenes[3][$cont].'" class="bbCodeImage" /></a>|sU';
    
$cadenaReemplazo "<img src='".$resultadosImagenes[2][$cont]."' alt='".$resultadosImagenes[3][$cont]."' />";
    
$cadena preg_replace($cadenaBuscar$cadenaReemplazo$cadena);

Saludos

Etiquetas: cadena, reemplazar
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 00:11.