Javascript - Expression Réguliere - pb Firefox / ie

Bonjour,

J’utilise cette expression régulière sous IE. Je n’ai aucun problème, elle marche très bien. ===>return alert(‘OK’)
Mais sur Firefox elle ne marche pas. ===>return alert(‘KO’)

Avez-vous une idée?? Merci


<script type="text/javascript">
var text= '[truc-lala]AAA-BBB-1CCC#lililolo 0.1.2.3';
 
var PE = /^[[][0-9a-zA-Z-]*[]][0-9a-zA-Z-]*[#][0-9a-zA-Z- .]*$/;
 
if ( PE.test(text) ){
 alert('OK');
}else{
 alert('KO');
}
</script>

Edité le 07/01/2008 à 22:15

C’est normal :

var PE = /^[[][0-9a-zA-Z-][]][0-9a-zA-Z-][#][0-9a-zA-Z- .]*$/;

?

Essaye d’échapper (avec ) les caractères spéciaux.

Visiblement c’est normal pour IE mais pas pour Firefox…
J’ai testé avec \ pour les caractères spéciaux et ça marche très bien pour ie et firefox :smiley:

Merci à toi “Sans-Nom”!! :super:

Voici le code après la modification:

var PE = /^[\[][0-9a-zA-Z\-]*[\]][0-9a-zA-Z\-]*[\#][0-9a-zA-Z\-\ \.]*$/;

Testé et validé: ie, firefox et opera 8)