String.Replace with \ in吗?

时间:2009-12-20 16:41:55

标签: c#

如何用双斜杠“\\”替换字符串中的“\”?

我尝试了String.Replace(“\”,“\\”)但是智能感知停止了工作:(

谢谢!

3 个答案:

答案 0 :(得分:12)

尝试:

String.Replace("\\","\\\\")

这是因为角色可以跟随\,这是一个特殊的角色。 \“意味着在字符串中放入文字双引号,而不是将其关闭。

以下是一些常见问题:
\n - 换行符
\r - 回车(Windows换行符为\r\n
\t - 标签

使用@"\"的其他答案是正确且易于理解的,因此应该使用它。

答案 1 :(得分:11)

\是字符串中的保留字符,它是一个“转义”。因此,例如,\n表示换行常量。

string.Replace(@"\", @"\\")可以正常工作 - @告诉编译器忽略\的转义。

或者,\\表示一个反斜杠 - 所以string.Replace("\\", "\\\\")也可以正常工作(虽然它有点不可读)。

答案 2 :(得分:2)

使用'@'使反斜杠失去其特殊含义:

String.Replace(@"\", @"\\")