Ersetzen Sie \\ mit \ in C#

Ich habe eine lange Zeichenkette (einen Pfad) mit Doppel-backslashes, und ich möchte, um es zu ersetzen mit einfache umgekehrte Schrägstriche:

string a = "a\\b\\c\\d";
string b = a.Replace(@"\\", @"\");  

Dieser code macht nichts...

b bleibt "a\\b\\c\\d"

Ich auch versucht, verschiedene Kombinationen von umgekehrten Schrägstrichen statt mit @, aber kein Glück.

  • Sie verwenden sollten, Weg.Kombinieren Sie für die Datei-Pfade sowieso.. auch, darf ich Fragen, warum?
  • "a\\b" == @"a\b".
  • Es ist ein string... nur stellt einen Pfad
  • Ich nicht erstellen, ich bekomme es von woanders.. es sieht aus wie eine\\b\\c\\d
  • Einen downvote? ernsthaft?
  • Ihr string a hat einfache umgekehrte Schrägstriche bereits.
  • Tut es das nicht. versuchen Sie es und sehen Sie selbst.
  • Genau. Es sieht aus wie zwei umgekehrte Schrägstriche. Versuchen Console.WriteLine("a\\b") und der zweite backslash magisch disappeares.
  • Die variable mit diesem string hat zwei, deshalb zermalmt später auf
  • "standardmäßig wird der debugger-Anzeige Backslashes als Doppel-Backslash, da es mit dem backslash als steuerzeichen." - Ist es das, was Sie sehen?
  • Okay, wenn var a = @"a\\b"; (Hinweis: die @), dann var b = a.Replace(@"\\", @"\"); sollte schon loswerden der zweiten backslash. Seien Sie sicher, die Saiten sind, was Sie denken, Sie sind.
  • Sechs downvotes? Das ist, schieben Sie es ein bisschen...

InformationsquelleAutor user990635 | 2013-07-29
Schreibe einen Kommentar