字符串中的双引号转义

问题描述 投票:149回答:5

双引号可以这样转义:

string test = @"He said to me, ""Hello World"". How are you?";

但是这涉及在字符串中添加字符"。是否有C#函数或其他方法来转义双引号,以便不需要更改字符串?

c# string double-quotes
5个回答
202
投票

编号

要么按原样使用逐字字符串文字,要么使用反斜杠对"进行转义。

string test = "He said to me, \"Hello World\" . How are you?";

在两种情况下字符串都没有改变-其中只有一个转义 "。这只是一种告诉C#字符是字符串的一部分而不是字符串终止符的方法。


66
投票

您可以以任何一种方式使用反斜线;

string str = "He said to me, \"Hello World\". How are you?";

它打印;

He said to me, "Hello World". How are you?

与印刷品完全相同;

string str = @"He said to me, ""Hello World"". How are you?";

这里是DEMO

DEMO仍然是字符串的一部分。

从MSDN签出"Escape Sequences。>>


16
投票

在C#中,您可以使用反斜杠在字符串中添加特殊字符。例如,要输入“,则需要写\”。您使用反斜杠编写了许多字符:带数字的反斜杠:


6
投票

您误解了。

多余的Escape Sequences字符是字符串文字的一部分;它们由编译器解释为single


5
投票

请说明您的问题。你说:

但是这涉及到在字符串中添加字符“。

© www.soinside.com 2019 - 2024. All rights reserved.