SOS pour regexp
Posté : 01 mai 2010, 06:07
Bonjour à tous,
j'ai un problème avec une expression régulière, et plus particulièrement les chevrons qui semblent ne jamais être matchés.
Exemple :
J'ai une expression : "XML version=1.3<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.00//EN">" (c'est un exemple)
mais j'ai beau faire n'importe quoi, une expression avec chevron (< ou >) n'est JAMAIS matchée.
Le code suivant affiche 'no match' :
alors que ceci marche parfaitement :
D'où cela peut-il venir ? Merci beaucoup.
PS : j'offre le champagne à celui qui arrive à me sortir de cette galère (cela fait deux heures que je suis dessus).
j'ai un problème avec une expression régulière, et plus particulièrement les chevrons qui semblent ne jamais être matchés.
Exemple :
J'ai une expression : "XML version=1.3<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.00//EN">" (c'est un exemple)
mais j'ai beau faire n'importe quoi, une expression avec chevron (< ou >) n'est JAMAIS matchée.
Le code suivant affiche 'no match' :
Code : Tout sélectionner
if (preg_match_all ('/.*<.*/', $expression, $urls))
print_r ($urls);
else
echo "no match";
alors que ceci marche parfaitement :
Code : Tout sélectionner
if (preg_match_all ('/.*HTML.*/', $expression, $urls))
print_r ($urls);
else
echo "no match";
D'où cela peut-il venir ? Merci beaucoup.
PS : j'offre le champagne à celui qui arrive à me sortir de cette galère (cela fait deux heures que je suis dessus).