Ver Mensaje Individual
  #28 (permalink)  
Antiguo 21/01/2010, 01:07
Avatar de neodani
neodani
 
Fecha de Ingreso: marzo-2007
Mensajes: 1.811
Antigüedad: 17 años, 1 mes
Puntos: 20
Respuesta: Encontrar etiquetas html, class y id's (con expresiones regulares)

Buenas,

Vuelvo a recurrir a vosotros, necesito una pequeña ayuda. Hay un fallo en la expresión regular que no me permite coger bien la clase cuando esta formada de la siguiente manera:

Me debería sacar que hay dos clases (estilo1 y estilo2). Sin embargo solo me encuentra una.


Código PHP:
Ver original
  1. $html2='<p class="estilo1"><label><input name="rememberme" type="checkbox" id="rememberme" class="estilo2" value="forever" tabindex="90" /> Recordarme</label></p>';
  2.  
  3. preg_match_all('/<([a-zA-Z0-9]+)[^>](?:(class)=["|\'](.*?)["|\'])*>/is',$html2,$matches);
  4.  
  5. echo "<pre>";
  6. print_r($matches);
  7. echo "</pre>";

Salida
Código:
<pre>Array
(
    [0] => Array
        (
            [0] => <p class="estilo1">
            [1] => <label>
        )

    [1] => Array
        (
            [0] => p
            [1] => labe
        )

    [2] => Array
        (
            [0] => class
            [1] => 
        )

    [3] => Array
        (
            [0] => estilo1
            [1] => 
        )

)
</pre>
¿Podéis ayudarme?

Muchas gracias de antemano