28/10/2012, 17:45
|
| | Fecha de Ingreso: febrero-2008
Mensajes: 13
Antigüedad: 16 años, 9 meses Puntos: 1 | |
Respuesta: Expresion regular que me haga un milagro Bueno como decía no soy experto en expresiones regulares, pero aquí te dejo mi aporte.
Funcionar funciona.... :)
<?php
$patrones = array();
$patrones[0] = '| class=[\"\'](.*?)\_(.*?)[\s](.*?)\_(.*?)[\s](.*?)\_(.*?)[\s](.*?)\_(.*?)[\s](.*?)\_(.*?)[\s]|';
$patrones[1] = '| class=[\"\'](.*?)\_(.*?)[\s](.*?)\_(.*?)[\s](.*?)\_(.*?)[\s](.*?)\_(.*?)[\s]|';
$patrones[2] = '| class=[\"\'](.*?)\_(.*?)[\s](.*?)\_(.*?)[\s](.*?)\_(.*?)[\s]|';
$patrones[3] = '| class=[\"\'](.*?)\_(.*?)[\s](.*?)\_(.*?)[\s]|';
$patrones[4] = '| class=[\"\'](.*?)\_(.*?)[\s]|';
$sustituciones = array();
$sustituciones[0] = ' class=\'$1 $2 _$2 $3 $4 _$4 $5 $6 _$6 $7 $8 _$8 $9 $10 _$10 ';
$sustituciones[1] = ' class=\'$1 $2 _$2 $3 $4 _$4 $5 $6 _$6 $7 $8 _$8 ';
$sustituciones[2] = ' class=\'$1 $2 _$2 $3 $4 _$4 $5 $6 _$6 ';
$sustituciones[3] = ' class=\'$1 $2 _$2 $3 $4 _$4 ';
$sustituciones[4] = ' class=\'$1 $2 _$2 ';
echo '<br>Primer ejemplo con 2 clases afectadas:<p>';
$string = "<div class='Aa _Bb _Cc Dd' >Esto es _Ff</div>";
echo htmlentities($string);
echo '<p>';
$salida = preg_replace($patrones, $sustituciones, $string);
echo '<br>Segundo ejemplo con 5 clases afectadas:<p>';
$string = "<div class='Aa _Bb _Cc Dd _Ee Ff _Gg Hh _Ii Jj' >Esto es _Ff</div>";
echo htmlentities($string);
echo '<p>';
$salida = preg_replace($patrones, $sustituciones, $string);
?> |