优秀的编程知识分享平台

网站首页 > 技术文章 正文

C#中的转义符与原始字符串(c# &转义)

nanyue 2024-09-15 23:29:53 技术文章 3 ℃

在C#中,转义符用于表示那些在字符串中具有特殊意义的字符,如引号、换行符等。而@符号,也称为verbatim字面量,用于创建原始字符串,它允许你在字符串中包含通常需要转义的字符,而无需使用转义符。

转义符

C#中的转义符及其对应的字符如下:

  • \n:换行符
  • \r:回车符
  • \t:制表符
  • \\:反斜杠本身
  • \":双引号
  • \':单引号
  • \0:空字符
  • \xXX:16进制转义序列
  • \uXXXX:Unicode转义序列
  • \UXXXXXXXX:Unicode转义序列(用于4字节的Unicode字符)

例如:

string lineBreak = "\nThis is a new line.";
string tabSpace = "\tThis text is aligned to the tab stop.";
string backslash = "This is a backslash: \\";
string quote = "He said, \"Hello, World!\"";

@符号(verbatim字符串)

使用@符号可以创建一个原始字符串,这样你就可以在字符串内部直接包含特殊字符,而无需使用转义符。

string path = @"C:\Program Files\MyApp\bin\Debug\MyApp.exe";
string multiLine = @"This is a
multi-line string
without any escape characters.";

在上面的例子中,第一行代码中的反斜杠不再是转义符,而是字符串内容的一部分。第二行代码展示了原始字符串可以跨越多行,而不需要添加额外的转义序列。

注意事项

  • 在verbatim字符串中,反斜杠\仍然是转义符,用于转义双引号"。
  • 如果verbatim字符串中需要包含一个@符号,你可以通过重复两次@@来实现。
  • 在字符串插值中,不能使用verbatim字符串。即,不能在#34;"中使用@符号。

通过合理使用转义符和@符号,你可以更灵活地处理字符串,无论是需要转义特殊字符还是需要包含原始格式的文本。

最近发表
标签列表