Foros del Web » Programando para Internet » PHP »

remplazar texto sin tocar el html

Estas en el tema de remplazar texto sin tocar el html en el foro de PHP en Foros del Web. hola buen dia. quiero pedirles una yuda por favor no se como hacerlo la verdad quiero remplazar las comillas dobles y simples de un texto ...
  #1 (permalink)  
Antiguo 24/07/2013, 17:26
 
Fecha de Ingreso: agosto-2010
Ubicación: peru
Mensajes: 115
Antigüedad: 13 años, 8 meses
Puntos: 0
remplazar texto sin tocar el html

hola buen dia.
quiero pedirles una yuda por favor no se como hacerlo
la verdad quiero remplazar las comillas dobles y simples de un texto pero sin tocar las etiquetas html, solo del texto

por ejemplo
de esto
<img src="http://i1.ytimg.com/vi/HvWRWfeXtAU/0.jpg" />
"Norman "es" el p'erro que" ha "batido" e

y que me quede solo esto

de esto <img src="http://i1.ytimg.com/vi/HvWRWfeXtAU/0.jpg" />
Norman es el perro que ha batido e

O sino que remplace por codigos htm &quot;

ayuda por favor.
  #2 (permalink)  
Antiguo 24/07/2013, 17:38
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años, 1 mes
Puntos: 292
Respuesta: remplazar texto sin tocar el html

Chequea la funcion str_replace()

http://php.net/manual/en/function.str-replace.php
__________________
Salu2!
  #3 (permalink)  
Antiguo 24/07/2013, 17:41
 
Fecha de Ingreso: octubre-2006
Ubicación: The Far West, Buenos Aires
Mensajes: 262
Antigüedad: 17 años, 6 meses
Puntos: 28
Respuesta: remplazar texto sin tocar el html

¿Y el texto html lo tienes ya escrito o lo obtienes a través de PHP, Python, Ruby, etc?

¿Por qué no puedes reemplazarlo con las funciones replace de php o de replace de javascript?
  #4 (permalink)  
Antiguo 24/07/2013, 17:51
 
Fecha de Ingreso: agosto-2010
Ubicación: peru
Mensajes: 115
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: remplazar texto sin tocar el html

si ya lo tengo escrito en un pequeño forito que yo programe
solo eso me esta haciendo rompre la caveza
si lo remplazo con str_remplase ,e queda de esta forma

<img src= &quot;http://i1.ytimg.com/vi/HvWRWfeXtAU/0.jpg &quot; />
"Norman &quot;es &quot; el p &quot;erro que &quot; ha &quot;batido &quot; e

Estare agardecido por vuestra ayuda
  #5 (permalink)  
Antiguo 24/07/2013, 18:17
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años, 1 mes
Puntos: 292
Respuesta: remplazar texto sin tocar el html

Ud quiere mostrar codigo HTML como se hace aqui ?

Código HTML:
Ver original
  1. ...
  2. </BODY>
  3. </HTML>

Algo asi ? o sea.. que se puedan LEER las etiquetas ? o que ? no le logro entender todavia
__________________
Salu2!
  #6 (permalink)  
Antiguo 24/07/2013, 18:24
 
Fecha de Ingreso: agosto-2010
Ubicación: peru
Mensajes: 115
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: remplazar texto sin tocar el html

quiero remplazar solo el texto dentro del etiquetas html

y no el codigo html

quiero que me quede de esta manera

sin remplazar las comillas de las etiquetas html solo del texto
que me quede asi:
<img src="http://i1.ytimg.com/vi/HvWRWfeXtAU/0.jpg" />
&quot;Norman &quot;es&quot; el p&quot;erro que&quot; ha &quot;batido&quot; e


por favor ayudeme, estare muy agradecido.
  #7 (permalink)  
Antiguo 24/07/2013, 18:39
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años, 1 mes
Puntos: 292
Respuesta: remplazar texto sin tocar el html

Vale... se hace con preg_replace_callback() y una expresion regular que le coja todos lo que queda ENTRE TAGS

En la funcion callback hace justo eso... los reemplazos:

Código PHP:
Ver original
  1. function callback ($inner){
  2.        return str_replace(array("'",'"'),array('',''),$inner));
  3. }

Ahora solo le falta conseguir la EXPRESION y soluciona


PD: se podria hacer con SimpleXML manipulando el DOM tambien
__________________
Salu2!

Última edición por Italico76; 24/07/2013 a las 18:47

Etiquetas: Ninguno
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 09:42.