J'ai une valeur de chaîne compressée que j'extrempe d'un fichier d'importation. J'ai besoin de formater ceci en un numéro de parcelle, qui est formaté comme suit: ##-##-##-###-###
. Par conséquent, la chaîne "410151000640" doit devenir "41-01-51-000-640". Je peux le faire avec le code suivant:Chaîne de format avec des tirets
String.Format("{0:##-##-##-###-###}", Convert.ToInt64("410151000640"));
Cependant, la chaîne ne peut pas être tous les nombres; il pourrait y avoir une lettre ou deux, et ainsi la conversion à l'int échouera. Existe-t-il un moyen de faire cela sur une chaîne de caractères de sorte que chaque caractère, qu'il s'agisse d'un nombre ou d'une lettre, rentrera correctement dans le format?
Fonctionne comme un charme! J'ai extrait ceci dans une méthode de wrapper avec un peu de validation et de gestion des erreurs. Merci! – Kevin
Je dois vraiment apprendre Regex correctement moi-même. Une très bonne solution à ce problème. –
@ Øyvind Si cela aide, j'aime utiliser http://www.regular-expressions.info/tutorial.html pour référence. Ils parlent également des différentes saveurs de regex fournies par différents moteurs. –