Foros del Web » Programando para Internet » PHP »

Reemplazar palabras exceptuando los enlaces

Estas en el tema de Reemplazar palabras exceptuando los enlaces en el foro de PHP en Foros del Web. pero si le estas entregando un array de reemplazo también... te recomiendo uses un bucle y te ahorras todo eso =) saludos. www.php.net/foreach...

  #31 (permalink)  
Antiguo 10/05/2011, 09:47
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: Reemplazar palabras exceptuando los enlaces

pero si le estas entregando un array de reemplazo también... te recomiendo uses un bucle y te ahorras todo eso =)

saludos.

www.php.net/foreach
__________________
More about me...
~ @rhyudek1
~ Github
  #32 (permalink)  
Antiguo 10/05/2011, 10:52
 
Fecha de Ingreso: febrero-2011
Mensajes: 12
Antigüedad: 13 años, 2 meses
Puntos: 1
Respuesta: Reemplazar palabras exceptuando los enlaces

Hola a tod@s

Nocesito hacer algo como lo siguiente pero el $replace debe ser un enlace que lo defino yo, por ejemplo :

Código PHP:
$replace "<a href='' title='' ....N >Esto es un texto</a>"
¿Cuál es el valor correcto para $replace para que me funcione ?

De igual manera no se deben hacer los reempalzos dentro de los enlaces del texto.
Muchas gracias a todos ;)





Código PHP:
$bar 'pais <a href="pais"> pais';
$search 'pais';
$replace 'chile';
function 
Replace($e){
        return 
$e[0] == strip_tags($e[0]) ? $GLOBALS['replace'] : $e[0];
}
echo 
preg_replace_callback("/(<a .*?href=['\"].*?$search.*?['\"].*?>|$search)/i""Replace"$bar); 
  #33 (permalink)  
Antiguo 10/05/2011, 11:32
 
Fecha de Ingreso: diciembre-2003
Mensajes: 157
Antigüedad: 20 años, 5 meses
Puntos: 1
Respuesta: Reemplazar palabras exceptuando los enlaces

Cita:
Iniciado por Hidek1 Ver Mensaje
pero si le estas entregando un array de reemplazo también... te recomiendo uses un bucle y te ahorras todo eso =)

saludos.

www.php.net/foreach
Gracias Hidek1!

La verdad es que lo dejo por hoy, a ver si mañana lo veo más claro, he introducido el bucle, pero no hay manera que me lo haga correctamente...

Código PHP:
$Text 'Pais es muy bonito <a href="pais"> un gran pais</a>'// palabra
$search = array();
$search[0] = "/(<a .*?href=['\"].*?pais.*?['\"].*?>|pais)/i";
$search[1] = "/(<a .*?href=['\"].*?bonito.*?['\"].*?>|bonito)/i";
$replace = array();
$replace[0] = 'chile';
$replace[1] = 'precioso';

foreach (
$search as $key1 => $value1) {
    foreach (
$replace as $key2 => $value2) {
        
$TXT preg_replace_callback($value1create_function('$e''return $e[0] == strip_tags($e[0]) ? $GLOBALS["value2"] : $e[0];'), $Text);
    }
}
echo 
$TXT
Gracias por todo, de veras.
__________________
http://www.idilicstudio.com

Etiquetas: enlaces, palabras, 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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 10:32.