使用替换方法将\替换为“C#中的符号”

时间:2014-12-04 14:50:40

标签: c#

我想用“使用C#代码的符号替换\。我正在为它编写代码。

string str=jsonstringdata.Replace("\"",""");

但它显然显示错误。

6 个答案:

答案 0 :(得分:4)

使用单引号字符,@ verbatim字符串或正确转义字符:

str.Replace('\\', '"')
str.Replace(@"\", @"""")
str.Replace("\\", "\"")

说明:

  1. 单个字符以单引号字符'分隔。文字字符串中的反斜杠转义规则适用于文字字符,但您可以直接指定双引号(即'"'而不是'\"')。
  2. C#中的逐字字符串没有反斜杠转义(即反斜杠按字面解释),使它们对文件路径有用。逐字字符串允许你通过将它们加倍来转义双引号字符,就像在VB的字符串中一样,例如@""""是一个包含单个双引号字符的字符串,类似地@"foo""bar"是一个字符串,在" foo"之间有一个双引号。和" bar"。
  3. 否则,使用普通字符串时,请使用反斜杠来转义任何特殊字符和反斜杠本身。

答案 1 :(得分:3)

这应该这样做 - 需要逃避正确的角色。

string str = jsonstringdata.Replace("\\","\"");

答案 2 :(得分:0)

string str= jsonstringdata.Replace("\\","\"");

答案 3 :(得分:0)

必须正确转义字符。查看here以获取有关JavaScript字符串以及如何转义正确字符的更多知识。

string result = yourString.Replace("\\","\"");

答案 4 :(得分:0)

您需要正确处理转义序列。使用\\查找\和\“将每个\替换为”。请参阅以下链接http://msdn.microsoft.com/en-us/library/aa691087(v=vs.71).aspx

string input = @"\a\\\\";
char replaceble = '\\';
char replacingChar = '\"';
var output = input.Replace(replaceble, replacingChar);

答案 5 :(得分:0)

你需要转义斜杠并引用字符。

var jsonStringData = "{ Hello\\World }";

string str = jsonStringData.Replace("\\", "\"");

// output of str = { Hello"World }