le 02/08/2006 à 02:36
Expressions rationnelles : c'est moi ou ça bug ? :D
Salut tout le monde !
Voilà, j'utilise l'expression rationnelle suivante et j'ai pu constater quelque chose d'étrange, qui peut être genant (qui m'a fait perdre 30 minutes par exemple !)
Cette expression rationnelle permet de trier les elements d'un fichier css
code fonctionnant à merveille :
code bugant ou plutot mal codé :
Donc voilà. Ma curiosité m'a poussé à faire ce post , pour savoir si oui ou non c'est un bug, peu être une faille qui fait que l'étoile n'est pas considérée comme échapée...
Merci !
Voilà, j'utilise l'expression rationnelle suivante et j'ai pu constater quelque chose d'étrange, qui peut être genant (qui m'a fait perdre 30 minutes par exemple !)
Cette expression rationnelle permet de trier les elements d'un fichier css
code fonctionnant à merveille :
$j=0;
while(eregi('([[:alnum:]|*|-]+):([[:alnum:]|-| |#]+);',$reg[2],$re)==true)
{
$reg[2] = str_replace($re[0],'',$reg[2]);
$balises[$reg[1]][$j]['attributs'] = $re[1];
$balises[$reg[1]][$j]['valeur'] = $re[2];
$j++;
}
unset($j,$reg,$re);
// Lorsque la boucle tombe sur l'attribut font-size, pas de problème :
// $balises[$reg[1]][$j]['attributs'] = font-size;
code bugant ou plutot mal codé :
$j=0;
while(eregi('([[:alnum:]|-|*]+):([[:alnum:]|-| |#]+);',$reg[2],$re)==true) // <== Notez la nuance
{ // ([[:alnum:]|-|*]+) au lieu de ([[:alnum:]|*|-]+)
$reg[2] = str_replace($re[0],'',$reg[2]);
$balises[$reg[1]][$j]['attributs'] = $re[1];
$balises[$reg[1]][$j]['valeur'] = $re[2];
$j++;
}
unset($j,$reg,$re);
// La par contre :
// $balises[$reg[1]][$j]['attributs'] = size;
Donc voilà. Ma curiosité m'a poussé à faire ce post , pour savoir si oui ou non c'est un bug, peu être une faille qui fait que l'étoile n'est pas considérée comme échapée...
Merci !