为什么这种双“ \\”字符串替换在C#中不起作用?

时间:2019-07-17 13:32:13

标签: c# .net string

我在C#中还很陌生,并且在字符串替换操作中遇到以下困难。

我有以下情况:

string utenteActiveDirectory = utente.UserId.Split('|')[1].Replace("\\", @"\");

其中utente.UserId.Split('|')[1]包含以下字符串:domain\\username

我必须将双\\替换为单个\字符。但是尝试使用上一行代码将无法正常工作,而我仍然得到domain\\username而不是预期的domain\username结果。

为什么?怎么了?我想念什么?我该如何解决?

1 个答案:

答案 0 :(得分:3)

尝试使用

string utenteActiveDirectory = utente.UserId.Split('|')[1].Replace(@"\\", @"\");

其原因是\是转义字符,因此您在原始代码中实际要做的就是将\替换为\