如何在C#中将单斜杠替换为双斜杠?

时间:2016-08-18 07:52:46

标签: c#

将单斜杠重写为双斜线不起作用总是返回单斜杠..

    string input;
    input = "\r\t";
    string mat1= input.Replace("\\\\","\\\\\\\\");
    string inputt= mat1;

如果我运行上面的代码,它将返回输出只有\ r \ _t ....

但我需要这样的输出

\ r \吨

4 个答案:

答案 0 :(得分:3)

"\r\t"实际上只有两个字符,回车和制表符。这是因为the \ escape character is used to specify special characters

如果您想拥有一个实际为"\r\t"的字符串,则需要使用\转义\\个字符。

所以你的字符串应该是:

input = "\\r\\t";

input = @"\r\t";

然后用双反斜杠替换反斜杠:

string mat1= input.Replace("\\","\\\\");

string mat1= input.Replace(@"\", @"\\");

答案 1 :(得分:0)

input = "\r\t";

是一个所谓的转义字符串。 \表示转义序列。如果你需要\ r \ t,你需要写

input = "\\r\\t";

答案 2 :(得分:0)

这是2个已经转义过的字符,而不是4个。

input="\r\t";

答案 3 :(得分:0)

\r\t是特殊文字。 Check this article

  

\r - 回程

     

\t - 水平标签

我想要的是,我想改变这个特殊文字:

string input;
input = "\r\t";
input = input.Replace("\r", "\\r");
input = input.Replace("\t", "\\t");
Console.WriteLine(input);