【问题标题】:Remove a backslash character from a string in C#从 C# 中的字符串中删除反斜杠字符
【发布时间】:2011-10-06 03:00:36
【问题描述】:

我想从这个字符串中删除一个反斜杠字符:

String result = "[{\"venues\":{\"venueId\":1,\"name\":\"First Venue\","
            + "\"telephone\":\"jkljl\",\"description\":\"Edited Description\","
            + "\"address\":\"jlkjlj\",\"city\":\"lkjl\",\"postcode\":\"M221TX\","
            + "\"image\":z\"abcImage007.jpg\",\"latitude\":53.37655,\"longitude\":-2.27418,\"deleted\":0,"
            + "\"events\":[{\"eventId\":3,\"name\":\"Test Event\",\"description\":\"Test Event Description\",\"date\":\"24/07/2011\",\"startTime\":\"11:11\",\"venueId\":0,\"deleted\":1},"
            + "{\"eventId\":3,\"name\":\"Test Event\",\"description\":\"Test Event Description\",\"date\":\"25/07/2011\",\"startTime\":\"11:11\",\"venueId\":0,\"deleted\":1}]}}]";

我试过了:

String abc = result.Replace(@"\",@"");
String abc = result.Replace(@"\",string.Empty);
String abc = result.Replace(@"\\",@"");
String abc = result.Replace(@"\\",string.Empty);

但没有任何效果。有人可以帮忙吗。

谢谢

【问题讨论】:

  • String abc = result.Replace("\\",""); ?
  • 这是字符串没有'\'字符,而是"\"" == "。
  • 您的字符串包含用于引号的转义字符,而不是反斜杠。

标签: c# .net string replace


【解决方案1】:

您的字符串不包含\

【讨论】:

  • 详细说明一下,您的字符串包含嵌入的引号字符,这是通过用 \ 转义 " 字符来实现的。如果您打印出 "result" 变量,您将不会在任何地方找到 \ .
【解决方案2】:

您不需要删除它们。 \" 是转义序列,表明您的字符串中是 " 符号(引号)

【讨论】:

    【解决方案3】:

    更全面:

    您的字符串不包含 \ 字符。在变量声明中,它用于转义 " 字符,以便可以将其放入字符串中而不会导致出现字符串结尾。

    如果在某处写出变量的值,你会发现没有 \ 字符

    【讨论】:

      【解决方案4】:

      测试这段代码

      String abc = result[0].Replace(@"\",@"");
      String abc = result[0].Replace(@"\",string.Empty);
      String abc = result[0].Replace(@"\\",@"");
      String abc = result[0].Replace(@"\\",string.Empty).
      

      【讨论】:

      猜你喜欢
      • 2021-09-14
      • 1970-01-01
      • 2015-03-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多