Foros del Web » Programando para Internet » PHP »

Expresion regular

Estas en el tema de Expresion regular en el foro de PHP en Foros del Web. Buenas, tengo un formulario que en un textarea meto html. Ese html a menudo tiene muchos objets de flash. Necesitaria saber como seria la expresion ...
  #1 (permalink)  
Antiguo 21/07/2010, 00:41
 
Fecha de Ingreso: junio-2009
Mensajes: 309
Antigüedad: 14 años, 10 meses
Puntos: 5
Expresion regular

Buenas, tengo un formulario que en un textarea meto html. Ese html a menudo tiene muchos objets de flash.

Necesitaria saber como seria la expresion regular para añadir el parametro wmode="opaque" a cada uno de los flash que pueda tener el html. Aparte tendria que comprobar si ya lo tiene puesto con otro valor y cambiarlo.

Gracias.
  #2 (permalink)  
Antiguo 21/07/2010, 07:11
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: Expresion regular

mm nisiquiera necesitas expresiones regulares
por ejemplo si quieres meterle el atributo alt="" a todos los links
Código PHP:
Ver original
  1. $foo = str_replace("<a", "<a alt=\"\"", $foo);

saludos!
__________________
More about me...
~ @rhyudek1
~ Github
  #3 (permalink)  
Antiguo 21/07/2010, 17:14
 
Fecha de Ingreso: junio-2009
Mensajes: 309
Antigüedad: 14 años, 10 meses
Puntos: 5
Respuesta: Expresion regular

Si,buena idea, uso este truco a menudo y no se por que lo habia omitido mentalmente. Con lo que dices en realidad no me sirve directamente ya que con esa solucion me tocaria hacer primero la comprobacion de que no existia wmode="opaque" o wmode="transparent"

Algo asi
Código PHP:
Ver original
  1. $foo=str_replace('wmode="opaque"','', $foo);
  2. $foo=str_replace('wmode="transparent"','', $foo);
  3. $foo=str_replace("wmode='opaque'",'', $foo);
  4. $foo=str_replace("wmode='transparent'",'', $foo);
  5. $foo =str_replace("<object", '<object wmode="transparent"', $foo);


Esto se puede acortar con preg_replace_all para el tema de juntar en uno los 4 primeros... Claro creo que de eso se trata. Mañana mas sin sueño lo pruebo.


Saludos
  #4 (permalink)  
Antiguo 22/07/2010, 21:46
 
Fecha de Ingreso: junio-2009
Mensajes: 309
Antigüedad: 14 años, 10 meses
Puntos: 5
Respuesta: Expresion regular

Algo asi:

Código PHP:
Ver original
  1. $patron=array('wmode="opaque"', 'wmode="transparent"', "wmode='opaque'", "wmode='transparent'");
  2.     $foo=preg_replace($patron, '', $foo);
  3.     $foo=str_replace("<object", '<object wmode="transparent"', $foo);

Etiquetas: expresion, regular
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 10:09.