繁体   English   中英

如何在字符串文字中引用\\“(斜杠双引号)?

[英]How to quote \" (slash double-quote) in a string literal?

这可能是一个非常简单的问题,但我似乎无法理解它。 我需要一个包含\\"的字符串, \\"它没有把它视为一个转义字符。我尝试使用@但它不起作用。我想这样做的另一种方法是使用"但不想要除非我能帮助它。

所需的字符串 - string s = "\\"\\""; // Obviously this doesn't work! string s = "\\"\\""; // Obviously this doesn't work!

所需的控制台输出 - \\"\\"

希望这是有道理的。

谢谢!

尝试

string s = "\\\"\\\"";

你也必须逃避你的反斜杠。

麦克风

在逐字字符串文字( @"..." )中, "字符串值中的”被编码为"" ,这恰好也是逐字字符串中唯一的转义序列。

@"\""Happy coding!\"""     // => \"Happy coding!\"

"\\\"Happy coding!\\\""    // => \"Happy coding!\"

请注意,在第二种情况下(不是逐字字符串文字),在\\之前需要\\ "以逃避它们并防止它们的正常含义。

有关更多详细信息和示例,请参阅C#字符串参考

您可以使用文字,但需要加倍引号。

   string s = @"\""\"""; 

我认为你也必须逃避反斜杠...所以像"\\\\\\"\\\\\\""这样的东西应该有效,我相信。

使用此字符串:

string s = "\\\"\\\"";
Console.WriteLine( "\\\"\\\"" );

只需在需要打印的每个字符前放一个\\

String s = @"\""\""";

DblQuote字符将转义第二个dblquote字符

虽然为了更好的可读性,我会选择:

const String DOUBLEQUOTE = """";
const String BACKSLASH = @"\";

String s = BACKSLASH + DOUBLEQUITE + BACKSLASH + DOUBLEQUOTE;

在逐字字符串(以@""开头的字符串)中,要使用双引号, @"Please press ""Ok""."使用双引号,例如@"Please press ""Ok""." 如果你想用逐字字符串来做,那么你会做类似@"\\""" (那里有3个双引号)。

你可以这样做,

string s = "something'\\\'";

在字符串中使用单个“而不是”“来执行相同操作。

暂无
暂无

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

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