Dies scheint wie eine Frage, die viele Male beantwortet wurde. Mein Team und ich haben in der letzten Stunde viele Lösungen ohne Glück versucht. Wir haben einen datenbankbasierten Zeichenfolgenwert, der c: \ test enthält, und wir möchten den umgekehrten Schrägstrich durch \\
ersetzen, was zu c:\\test
führt.Ersetzen einzelner Backslash in datenbankgesteuerter Zeichenfolge
Wir haben versucht mit .Replace, Regex.Replace, .Split und Neuerstellung der Zeichenfolge, habe ich versucht, mit einer for-Schleife und Teilzeichenfolge jedes Zeichen zu untersuchen. Wenn du am Doppelpunkt vorbeikommst, erscheint das nächste Zeichen als "\ t".
Bitte versuchen Sie die Lösung vor dem Einreichen, da wir viele verschiedene Methoden einschließlich Dutzende von Vorschlägen bereits auf Stapelüberlauf versucht haben.
Wenn wir die Zeichenfolge manuell als literal wie Pfad = @ "c: \ test" festlegen, funktioniert die Verwendung von Ersetzung problemlos.
Ich würde denken, dass die Lösung wäre, eine Zeichenfolge zu erstellen, die das Escape-Zeichen nicht verarbeitet, aber ich habe keine Ahnung, wie Sie das implementieren.
Haben Sie Ihre versucht, "c: \\ test"? –
Falls diese Kuriosität mit jemand anderem passiert. Dies geschah nur, weil der Pfad von "C: \ temp" verwendet wurde. Hätten wir die Zeichenfolge auf "c: \ logs" voreingestellt, hätten wir eine ungültige Escape erhalten, aber da \ t die von Alexei erwähnte Registerkarte ist, akzeptierte sie die Zeichenfolge als gültig, zeigte aber auf "c: emp". –
CubeRoot