JS et expression régulière mal interprétée
	
	
		Bonjour à tous
J'effectue un controle de saisie via une expression régulière d'un nombre décimal poisitif ou négatif, avec ou sans virugule)
J'utilise pour cela l'expression régulière 
	Code:
	
| 12
 
 |  
(?:-)?(?:[1-9]{1}[0-9]*|0{1})(?:(?:\.|,)[0-9]*[1-9]{1})? | 
 Qui marche très bien en C# mais pas en Javascript (IE8 et FF3)
En effet une saisie comme 000001 est acceptée alors qu'elle ne le devrait pas
Par contre l'inversion du genre 1.2500000 est refusé et bien remplacé par 1.25
Le code JS est le suivant :
	Code:
	
| 12
 3
 
 |  
result = (new RegExp('(?:-)?(?:[1-9]{1}[0-9]*|0{1})(?:(?:\.|,)[0-9]*[1-9]{1})?','')).exec(chaine);
chaine = (result != null) ? result[0] : ''; | 
 Notons que le code JS suivant produit le même résultat 
	Code:
	
| 12
 3
 
 |  
result = (new String(chaine)).match('(?:-)?(?:[1-9]{1}[0-9]*|0{1})(?:(?:\.|,)[0-9]*[1-9]{1})?');
chaine = (result != null) ? result[0] : ''; | 
 
Une idée sur la raison ?