Ver Mensaje Individual
  #4 (permalink)  
Antiguo 29/11/2011, 08:25
Avatar de abimaelrc
abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 10 meses
Puntos: 1517
Respuesta: Exprecion regular - preg_replace()

Otra forma de hacerlo es con DOM, algo así
Código PHP:
Ver original
  1. <?php
  2. $html = <<<HTML
  3. <span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif; font-size: large;">texto</span>
  4. HTML;
  5. $dom = new DOMDocument();
  6. $dom->loadHTML($html);
  7. foreach($dom->getElementsByTagName('span') as $v){
  8.     //Remover el attributo deseado
  9.     //Otra forma de hacerlo es:
  10.     //$v->setAttribute('style', '');
  11.     $v->removeAttribute('style');
  12.  
  13.     //Obtener los demás atributos y añadirlos a un array
  14.     $attrs = array();
  15.     foreach($v->attributes as $attrName => $attrNode){
  16.         $attrs[] = $attrName . '="' . $attrNode->nodeValue . '"';
  17.     }
  18.  
  19.     //Mostrar el resultado final de los elementos
  20.     echo htmlentities('<' . $v->nodeName . ' ' . implode(' ', $attrs) . '>' . $v->nodeValue . '</' . $v->nodeName . '>');
  21. }
Considero que es la mejor forma de parsear, editar y añadir en los documentos HTML/XML, ya que es bien flexible a la hora de trabajarlos
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos

Última edición por abimaelrc; 29/11/2011 a las 08:34 Razón: Añadir notas al código