Foros del Web » Programando para Internet » PHP »

[Resuelto] Sustituyendo en cadenas con texto variable

Estas en el tema de [Resuelto] Sustituyendo en cadenas con texto variable en el foro de PHP en Foros del Web. Hola. Me gustaría que me ayudaran con lo siguiente, Quiero conseguir que cuando en una cadena me aparezca: $cadena = "............... <span (cualquier cosa)> .............. ...
  #1 (permalink)  
Antiguo 10/09/2009, 07:29
TobyMudito
Invitado
 
Mensajes: n/a
Puntos:
[Resuelto] Sustituyendo en cadenas con texto variable

Hola.

Me gustaría que me ayudaran con lo siguiente,

Quiero conseguir que cuando en una cadena me aparezca:

$cadena = "............... <span (cualquier cosa)> .............. <span (cualquier otra)>... "

Php sea capaz de eliminar todas las etiquetas span, sería facil si la cadena siempre fuera la misma, pero después de span puede haber cualquier cosa hasta el carácter ">"y es ahí donde ya no se como seguir, supongo que se podrá hacer con expresiones regulares.

Espero vuestra ayuda.

GRACIAS!

Última edición por TobyMudito; 10/09/2009 a las 10:10
  #2 (permalink)  
Antiguo 10/09/2009, 07:40
 
Fecha de Ingreso: abril-2008
Mensajes: 435
Antigüedad: 16 años
Puntos: 10
Respuesta: [Sin Resolver] Sustituyendo en cadenas con texto variable

como dices es cuestion de expresiones regulares, la idea es buscar lo que esta dentro de las etiquetas <span> y </span>. y reemplazarla por vacio, para eso usas la funcion preg_replace.

la expresion regular seria asi
/<span>(.*)</span>/

cualquier duda consulta


saludos
  #3 (permalink)  
Antiguo 10/09/2009, 08:47
TobyMudito
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: [Sin Resolver] Sustituyendo en cadenas con texto variable

Cita:
Iniciado por Adell Ver Mensaje
como dices es cuestion de expresiones regulares, la idea es buscar lo que esta dentro de las etiquetas <span> y </span>. y reemplazarla por vacio, para eso usas la funcion preg_replace.

la expresion regular seria asi
/<span>(.*)</span>/

cualquier duda consulta


saludos
Crero que la expresion regular no está bien planteada, pues la etiqueta span contiene atributos que creo que no quedan incluidos. Además,¿ es seguro que dejaría lo que está dentro del span?

Gracias por la ayuda :)
  #4 (permalink)  
Antiguo 10/09/2009, 09:07
 
Fecha de Ingreso: abril-2008
Mensajes: 435
Antigüedad: 16 años
Puntos: 10
Respuesta: [Sin Resolver] Sustituyendo en cadenas con texto variable

si quieres sacar la etiqueta span puedes usar strip_tags para el contenido cambiala exprsion regular por esto

/<span(.*)>(.*)<\/span>/
  #5 (permalink)  
Antiguo 10/09/2009, 09:32
TobyMudito
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: [Sin Resolver] Sustituyendo en cadenas con texto variable

Cita:
Iniciado por Adell Ver Mensaje
si quieres sacar la etiqueta span puedes usar strip_tags para el contenido cambiala exprsion regular por esto

/<span(.*)>(.*)<\/span>/
Estoy probando esto:

preg_replace("/<span(.*)>(.*)<\/span>/",'',$string);

y no funciona...

Pongo un ejemplo:
$string= "16 de mayo de 2009 <span
lang=ES-TRAD style='font-size:8.0pt;font-family:"Arial","sans-serif"'> Titulo </span> Reunidos: <span
lang=ES-TRAD style='font-size:8.0pt;font-family:"Verdana"'> D. Julio... </span>";

Tengo que conseguir:

$string="16 de mayo de 2009 Titulo Reunidos: D. Julio...";
  #6 (permalink)  
Antiguo 10/09/2009, 09:38
 
Fecha de Ingreso: abril-2008
Mensajes: 435
Antigüedad: 16 años
Puntos: 10
Respuesta: [Sin Resolver] Sustituyendo en cadenas con texto variable

como dije para eso usa la funcion strip_tags

$texto = "<span>aaaaa</span>";
echo strip_tags($texto);

devuelve aaaaa

saludos
  #7 (permalink)  
Antiguo 10/09/2009, 09:40
TobyMudito
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: [Sin Resolver] Sustituyendo en cadenas con texto variable

Cita:
Iniciado por Adell Ver Mensaje
como dije para eso usa la funcion strip_tags

$texto = "<span>aaaaa</span>";
echo strip_tags($texto);

devuelve aaaaa

saludos
Eso lo se, pero si te fijas en el ejemplo que he puesto no es solo <span> dentro hay un montón de atributos que van cambiando sin que yo pueda controlarlo. Además de que existen otras etiquetas que no quiero quitar, y que strip_tags me quitaría.
  #8 (permalink)  
Antiguo 10/09/2009, 10:01
 
Fecha de Ingreso: abril-2008
Mensajes: 435
Antigüedad: 16 años
Puntos: 10
Respuesta: [Sin Resolver] Sustituyendo en cadenas con texto variable

con respecto a tu primer duda strip_tags saca las etiquetas con sus atributos, y respecto a la segunda duda, esta funcion tiene un parametro opcional que son etiquetas que ignora o sea las pones en la funcion y no las saca

saludos
  #9 (permalink)  
Antiguo 10/09/2009, 10:08
TobyMudito
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: [Sin Resolver] Sustituyendo en cadenas con texto variable

Cita:
Iniciado por Adell Ver Mensaje
con respecto a tu primer duda strip_tags saca las etiquetas con sus atributos, y respecto a la segunda duda, esta funcion tiene un parametro opcional que son etiquetas que ignora o sea las pones en la funcion y no las saca

saludos
Muchas gracias, no me quedaba claro lo de que saca las etiquetas con sus atributos, creo que ya lo tengo.

Insisto, muchas gracias.
  #10 (permalink)  
Antiguo 10/09/2009, 10:14
 
Fecha de Ingreso: abril-2008
Mensajes: 435
Antigüedad: 16 años
Puntos: 10
Respuesta: [Resuelto] Sustituyendo en cadenas con texto variable

por nada para eso estamos

saludos
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 05:58.