2011-12-20 5 views
0

Est-ce que quelqu'un sait que je peux remplacer un groupe de nombres d'une chaîne par un *. Par exemple, si j'ai une chaîne comme celle-ci "Test123456.txt", je veux la convertir en "Test # .txt". J'ai vu beaucoup d'exemples qui peuvent remplacer chaque nombre individuel par un nouveau personnage, mais aucun qui traite d'un groupe de nombres. Toute aide est très appréciée!C# Remplacer un groupe de nombres dans une chaîne par un seul caractère

Répondre

4
Regex r = new Regex(@"\d+", RegexOptions.None); 
      Console.WriteLine(r.Replace("Test123456.txt", "#")); 
      Console.Read(); 
+0

C'est parfait !!! Je l'accepterai quand je le pourrai. Je vous remercie! – DukeOfMarmalade

1

vous pouvez utiliser regex, pour ce faire, mais si vous connaissez le texte exact, puis en utilisant la méthode string.Replace serait plus efficace:

string str = "blahblahblahTest123456.txt"; 
str = string.Replace("Test#.txt","Test123456.txt"); 
1

Utilisation Regex.Replace() comme suit:

string fileName = "Test12345.txt"; 
string newFileName = Regex.Replace(fileName, @"[\d]+", "#"); 
Questions connexes