Bonjour,
Je cherche à faire un petit script simple qui va convertir dans une chaine les symboles & é " ' ( - è _ ç à de notre clavier français en valeurs numériques, à savoir 1 2 3 4 5 6 7 8 9 0.
J'utilise donc les RegExp, mais 2 choses me posent problème :
- d'abord, comment faire la conversion de l'ensemble des caractères en 1 seule fois ? en l'état, j'ai besoin de 10 lignes du type :
	
	val = val.replace(new RegExp("&" ,"g"), '1');
 ce qui vous en conviendrez n'est pas élégant du tout.
- Ensuite, j'ai un problème pour le 5 qui correspond au symbole "("... J'écrit donc :
	
	val = val.replace(new RegExp("\(" ,"g"), '5');
 et malgré la protection via l'antislash, j'ai invariablement la même erreur : unterminated parenthetical.
	
		
			
			
				EDIT : J'ai trouvé la solution, il faut faire une double protection : un protection pour le symbole \ et une protection pour le symbole (, ce qui donnr la ligne suivante : 
	
	val = val.replace(new RegExp("\\\(" ,"g"), '5');
 Pour le reste, j'ai pas encore de solution
			
		 
	 
 Enfin, il me semble que le symbole - devrait également être protégé... Pourtant, que j'écrive :
	
	val = val.replace(new RegExp("\-" ,"g"), '6');
 ou
	
	val = val.replace(new RegExp("-" ,"g"), '6');
 Le résultat est le même : ça marche... Dans un soucis de compréhension, quelqu'un aurait-il l'amabilité de m'expliquer pourquoi ?
En vous remerciant par avance.
						
					
Partager