3

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

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

1.

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

String 测试中的 Nothing Changed 与声明的相同

2.

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

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

在谷歌等上找不到任何东西。

感谢您的每一个帮助。

4

5 回答 5

5

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

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

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

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

test = test.Replace("'", @"\'");
于 2013-08-02T13:13:44.093 回答
1

你的第二种情况似乎是正确的。看起来这只是 deguber 中的样子。尝试在控制台上写,你会看到预期的结果。

在此处输入图像描述

您可以改用verbtaim 字符串文字

string test = "HISTOIRE D'O, CHAPITRE II";
test = test.Replace("'", @"\'");
于 2013-08-02T13:14:23.217 回答
0

这应该可以解决问题:

string test = "HISTOIRE D'O, CHAPITRE II";
test = test.Replace("'", @"\'");
于 2013-08-02T13:17:00.790 回答
0

您的第二个示例正在运行,但是当您在调试器中查看结果时,它通过向其添加新的反斜杠来“帮助”转义反斜杠。

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

于 2013-08-02T13:14:39.360 回答
0
test = test.Replace("'", @"\'");
于 2013-08-02T13:14:39.780 回答