c# - 在 C# 中用双引号替换转义字符

标签 c# asp.net string

我在名为的变量中有以下字符串,

:

[{\"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/

相关文章:

c# - DataRow:检查 DataSet 中的空(不是“空”)字段

c# - TCPClient 异常的新实例

ASP.NET 4、VSD2010和MySQL 5使用ASP.net进行连接

javascript - 根据内部内容使 iframe 高度动态化- JQUERY/Javascript

java - 哈希表不接受字符串作为键

c# - 使用传输安全和客户端证书时无法将数据发布到 WCF 休息服务

c# - 日期值不正确 : for column 'Date' at row 1?

asp.net - 手动启动 ASP 开发服务器?

C# 正则表达式中匹配字母、数字和特殊字符

c++ - 如何将多个字符放入一个字符串中