我在名为的变量中有以下字符串,
:
[{\"roleIndex\":0,\"roleID\":\"c1_r0_23\",\"roleName\":\"Chief Executive\"},
{\"roleIndex\":1,\"roleID\":\"c1_r1_154\",\"roleName\":\"Chief Operator\"}]
我正在尝试使用以下命令将\"替换为 ":
s.ToString().Replace("\"", """");
但这行不通。
C# 中正确的语法是什么?
最佳答案
试试 s.ToString().Replace(@"\""", "\"")
。
@
告诉 C# 按字面解释字符串,而不是将 \
视为转义字符。 "\""
作为第二个参数使用 \
作为转义字符来转义双引号。
如果 s
已经是 string
类型,您也不需要调用 ToString()
。
最后但同样重要的是,不要忘记字符串替换不是原地完成的,而是会创建一个新字符串。如果要保留该值,则需要将其分配给一个变量:
var newString = s.ToString().Replace(@"\""", "\"");
// or s = s.Replace(@"\""", "\""); if "s" is already a string.
关于c# - 在 C# 中用双引号替换转义字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7615878/