首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在C#中替换双引号字符串

在C#中替换双引号字符串
EN

Stack Overflow用户
提问于 2012-02-22 19:25:53
回答 6查看 137.5K关注 0票数 47

如何替换C#中的以下字符串

当前:

代码语言:javascript
复制
"John K "GEN" Greg"

目标:

代码语言:javascript
复制
 "John K \"GEN\" Greg"

这是错误的,因为我没有正确地转义它:

代码语言:javascript
复制
s = s.Replace(""","\"");

用\(斜杠)替换引号的语法是什么?

任何帮助都将不胜感激。

谢谢

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2012-02-22 19:27:11

代码语言:javascript
复制
s = s.Replace("\"", "\\\"");

代码语言:javascript
复制
s = s.Replace(@"""", @"\""");

在第一个示例中,"必须使用反斜杠进行转义,否则将结束字符串。同样,在替换字符串中,需要\\通过对转义字符进行转义来生成单个反斜杠。

在第二个示例中,使用了逐字字符串字面量,它们被写为@"..."。在这些文字中,不能识别转义序列,允许您以更简洁的方式编写包含大量反斜杠的字符串(例如正则表达式)。唯一有效的转义序列是用于单个"""

票数 105
EN

Stack Overflow用户

发布于 2012-02-22 19:27:42

您应该使用双反斜杠:

代码语言:javascript
复制
s = s.Replace("\"", "\\\"");
票数 9
EN

Stack Overflow用户

发布于 2013-11-07 05:05:16

要删除字符串中的所有引号,请尝试:

field.Value = Regex.Replace(field.Value,@“\ "",”“,RegexOptions.None);

在互联网上寻找这个答案是多么痛苦的事情!

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9393879

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档