繁体   English   中英

试图用文字C替换'

[英]Trying to Replace ' with literal C#

我这里有一个小问题。 我试图用'替换'字符'

我通过以下方式尝试了字符串替换方法:

1。

string test = "HISTOIRE D'O, CHAPITRE II";
test = test.Replace("'","\'");

字符串测试中没有任何更改与声明的相同

2。

string test = "HISTOIRE D'O, CHAPITRE II";
test = test.Replace("'","\\'");

这格式化了我的字符串,如“HISTOIRE D \\\\'O,CHAPITRE II”;

在Google等上找不到任何内容

谢谢你的帮助。

你的第二个代码是正确的。

这格式化了我的字符串,如“HISTOIRE D \\'O,CHAPITRE II”;

不,它确实没有。 这就是它在调试器中的外观,但如果将其转储到控制台或类似的东西,你会看到只有一个反斜杠。

作为替代方案,您可以使用逐字字符串文字:

test = test.Replace("'", @"\'");

你的第二个案子似乎是对的 看起来这只是在degubber中的样子。 尝试在控制台上写,你会看到预期的结果。

在此输入图像描述

您可以使用verbtaim string literal ;

string test = "HISTOIRE D'O, CHAPITRE II";
test = test.Replace("'", @"\'");

你的第二个例子正在工作,但当你在调试器中查看结果时,它“有用”地通过向它添加一个新的反斜杠来逃避反斜杠。

如果将结果打印到控制台窗口,您应该会看到您的期望。

test = test.Replace("'", @"\'");

这应该做的伎俩:

string test = "HISTOIRE D'O, CHAPITRE II";
test = test.Replace("'", @"\'");

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM