在C#中用\替换\\

use*_*635 1 c# string replace escaping verbatim-string

我有一个带有双反斜杠的长字符串(路径),我想用单个反斜杠替换它:

string a = "a\\b\\c\\d";
string b = a.Replace(@"\\", @"\");  
Run Code Online (Sandbox Code Playgroud)

这段代码什么都没做......

b 遗迹 "a\\b\\c\\d"

我也尝试了不同的反斜杠组合而不是使用@,但没有运气.

Oti*_*iel 7

因为您在a不使用时声明@,所以该a示例中的字符串不包含任何双斜杠.事实上,在你的例子中a == "a\b\c\d",所以Replace没有找到任何要替换的东西.尝试:

string a = @"a\\b\\c\\d";
string b = a.Replace(@"\\", @"\"); 
Run Code Online (Sandbox Code Playgroud)