如何更换在C#以下字符串双引号字符串替换在C#
电流:
"John K "GEN" Greg"
目标:
"John K \"GEN\" Greg"
这是错误的,因为我不是逃避它正确:
s = s.Replace(""","\"");
什么是用\(斜线)替换引号的语法?
任何帮助,将不胜感激。
由于
如何更换在C#以下字符串双引号字符串替换在C#
电流:
"John K "GEN" Greg"
目标:
"John K \"GEN\" Greg"
这是错误的,因为我不是逃避它正确:
s = s.Replace(""","\"");
什么是用\(斜线)替换引号的语法?
任何帮助,将不胜感激。
由于
s = s.Replace("\"", "\\\"");
或
s = s.Replace(@"""", @"\""");
在第一个例子的"
必须与反斜杠转义,因为它会否则结束字符串。同样,替换字符串\\
需要通过转义转义字符来产生单个反斜杠。
在第二个例子中使用了逐字字符串文字,它们被写为@"..."
。在这些文字中,不会识别转义序列,从而允许您以更简洁的方式(例如正则表达式)编写包含大量反斜杠的字符串。在那里工作的唯一转义序列是""
,单个"
。
您应该使用双反斜线:
s = s.Replace("\"", "\\\"");
s = s.Replace("\"","\\\"");
什么是你逃了?如果您要将其插入数据库,请考虑使用prepared statements。如果您打算在HTML输出中使用它,请考虑使用一些模板引擎来替代您自己。
尝试:var result = yourString.Replace("\"", "\\\"");
要删除字符串中的所有报价,请尝试:
field.Value = Regex.Replace(field.Value,@ “[\” “]”, “”,RegexOptions 。没有);
试图在互联网上找到这个答案是一种痛苦!
string MailFrom ="[email protected];\"PROMMS\" [email protected];";
string NewMailFrom = Regex.Replace(MailFrom, "\"[^\"]*\"", string.Empty);
Results
[email protected];[email protected];
由于某种原因,其他答案不适用于我,这样做!谢谢! – 2017-10-15 10:05:59