当前位置:首页 > C# > 正文

C# 11.0 原始字符串字面量详解(轻松掌握 C# 新特性中的字符串处理技巧)

在 C# 11.0 中,微软引入了一项非常实用的新特性 —— 原始字符串字面量(Raw String Literals)。这项功能极大简化了多行字符串、包含大量引号或特殊字符的字符串的编写方式。无论你是刚入门的 C# 小白,还是有经验的开发者,掌握这一特性都能让你的代码更清晰、更易维护。

C# 11.0 原始字符串字面量详解(轻松掌握 新特性中的字符串处理技巧) 原始字符串字面量 C#字符串处理 C#新特性 第1张

什么是原始字符串字面量?

在 C# 11.0 之前,如果我们想写一个多行字符串,或者字符串中包含很多双引号(")、反斜杠(\)等特殊字符,就需要频繁使用转义符(如 \"\\),这不仅麻烦,还容易出错。

而原始字符串字面量允许你原样书写字符串内容,无需转义!它通过使用""")来定义字符串的开始和结束。

基本语法

原始字符串字面量的语法如下:

string myString = """你的字符串内容可以跨多行包含 " 引号、\ 反斜杠等都不需要转义!""";  

实际示例对比

假设我们要定义一段 JSON 字符串,在 C# 10 及以前版本中,你可能要这样写:

string json = "{\"name\": \"张三\", \"age\": 30, \"city\": \"北京\"}";  

是不是看起来很乱?现在用 C# 11.0 的原始字符串字面量,你可以这样写:

string json = """{  "name": "张三",  "age": 30,  "city": "北京"}""";  

是不是清晰多了?而且支持换行、缩进,完全保留原始格式!

嵌入表达式(插值)

原始字符串字面量也支持字符串插值!只需在开头加一个 $ 符号,并使用花括号 {} 包裹变量即可。

string name = "李四";int age = 25;string message = $"""你好,{name}!你今年 {age} 岁了。欢迎使用 C# 11.0 的原始字符串字面量!""";  

注意事项

  • 起始和结束的引号数量必须相同,且至少为三个(""")。
  • 如果字符串内容本身包含三个连续的双引号("""),你需要用四个引号("""")作为界定符,以此类推。
  • 原始字符串会保留所有空白字符(包括换行和缩进),如果你不希望前导空格被包含,可以使用 .Trim() 方法。

总结

C# 11.0 的原始字符串字面量是提升代码可读性和开发效率的一大利器。无论是处理 SQL 查询、JSON 数据、HTML 模板,还是多行日志信息,它都能让你告别繁琐的转义操作。

通过本文的学习,相信你已经掌握了 C# 11.0 中这一强大新特性。赶快在你的项目中尝试使用原始字符串字面量吧!

SEO关键词:C# 11.0、原始字符串字面量、C#字符串处理、C#新特性