Llevo 3 días tratando de encontrar la solución a un problema (incluido en este foro :) sobre expresiones regulares.
Me explico a continuación:
tengo el siguiente texto html que necesito regularizar:
Código:
Lo seguro es que:<img class="mi_clase" width="20" height="20" value="id:5"/>
1.-el tag es de la clase "mi_clase" y siempre está enseguida del nombre del tag
2.-tengo un value="id:[digito]" antes de cerrar el tag con "/>"
3.-En el medio puede haber cualquier otro atributo del tag.
Necesito extraer el valor de id (en este caso 5) y reemplazar la cadena entera (<img..... />) con el mismo.
ej:
Código:
Y el resultado que quiero obtener es el siguiente:<img class="mi_clase" width="20" height="20" value="id:5"/> <p>Un parrafo por aqui</p> <img class="mi_clase" width="20" height="20" value="id:6"/> <p>Otro parrafo por aqui</p>
Código:
Se que tengo que usar backreferences para tomar el 5 y 6 respectivamente, pero he intentado y lo maximo que he podido hacer es tomar todo el tag (<img ... />) con el siguiente codigo php:5 <p>Un parrafo por aqui</p> 6 <p>Otro parrafo por aqui</p>
Código PHP:
$pat ='<img class="mi_clase[^>]+(id:([[:digit:]]))*>';
$rep ="[]";
//$this->content tiene el html con varias repeticiones del tag <img class="mi_clase"..../>
$this->content=eregi_replace($pat,$rep,$this->content);
Les agradecería que me pudiesen hechar un cable con el asunto.
Un sld.
Alejandro,.-