3 votes

Problème d'expression régulière dans IE 6

J'ai un problème de validation d'une chaîne de caractères avec une expression régulière dans IE 6. Le modèle de lien est le suivant :

(?=^\S*$)(?=((http|https):\/\/.+))

Il fonctionne correctement dans IE 8, FF, Chrome, mais échoue dans IE 6.

Par exemple, la chaîne "http://google.com" ne correspond pas au motif uniquement dans IE 6. En cherchant la réponse, j'ai trouvé des articles sur les bogues de regex dans IE6 liés à l'utilisation de lookaheads, mais je n'ai pas compris si mon cas s'y prêtait également.

Merci d'avance

1voto

Tim Pietzcker Points 146308

S'il ne correspond pas, alors oui, c'est un bug. Cependant, la regex elle-même est très bizarre. Vous obtiendriez le même résultat avec

(?=^https?:\/\/\S+$)

ou, puisque vous n'avez pas du tout besoin d'un lookahead ici :

^https?:\/\/\S+$

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X