字符串中的@和运算符有什么区别

本文关键字:什么 区别 运算符 字符串 | 更新日期: 2023-09-27 18:21:21

有一个@运算符,用于放置字符串的信息以允许在字符串中使用特殊字符,还有'。我知道使用@可以为变量使用保留名称,但我很好奇将这两个运算符与字符串一起使用的区别。

网上搜索表明这两者是相同的,但我仍然认为@'之间一定有不同。

测试代码:

string _string0 = @"Just a ""qoute""";
string _string1 = "Just a '"qoute'"";
Console.WriteLine("{0} | {1}",_string0, _string1);

问题:仅就字符串而言,@"Just a ""qoute""";"Just a '"qoute'"";之间有什么区别?

编辑:此处已回答此问题。

字符串中的@和运算符有什么区别

使用@(表示逐字逐句的字符串文字),您可以将任何字符放入字符串中,即使是换行符。唯一需要转义的字符是双引号。通常的'*转义序列和Unicode转义序列不会在这样的字符串文字中进行处理
如果没有@(在正则字符串文本中),则需要转义每个特殊字符,例如换行符。

您可以在C#编程指南中阅读更多关于它的信息:
https://msdn.microsoft.com/en-us/library/ms228362.aspx#Anchor_3

@是一个逐字逐句的字符串,它允许您不一次转义每个特殊字符,而是转义字符串中的所有字符。While只允许您逃离某个特定的角色。有关字符串的详细信息:https://msdn.microsoft.com/en-us/library/aa691090%28v=vs.71%29.aspx