首页 > 编程语言 >C# 11 原始字符串文本

C# 11 原始字符串文本

时间:2023-09-02 13:11:06浏览次数:33  
标签:11 00 字面 C# 引号 原始 字符串 文本 string

原始字符串文本

从 C# 11 开始,可以使用原始字符串字面量更轻松地创建多行字符串,或使用需要转义序列的任何字符。 原始字符串字面量无需使用转义序列。 你可以编写字符串,包括空格格式,以及你希望在输出中显示该字符串的方式。 原始字符串字面量:

以至少三个双引号字符序列 (""") 开头和结尾。 可以使用三个以上的连续字符开始和结束序列,以支持包含三个(或更多)重复引号字符的字符串字面量。
单行原始字符串字面量需要左引号和右引号字符位于同一行上。
多行原始字符串字面量需要左引号和右引号字符位于各自的行上。
在多行原始字符串字面量中,会删除右引号左侧的任何空格。

使用带引号的字符串字面量或逐字字符串字面量时,如果生成的文本包括需要转义序列的字符,应考虑原始字符串字面量。 原始字符串字面量将更易于你和其他人阅读,因为它更类似于输出文本。 例如,请考虑包含格式化 JSON 字符串的以下代码:

string jsonString = """
{
  "Date": "2019-08-01T00:00:00-07:00",
  "TemperatureCelsius": 25,
  "Summary": "Hot",
  "DatesAvailable": [
    "2019-08-01T00:00:00-07:00",
    "2019-08-02T00:00:00-07:00"
  ],
  "TemperatureRanges": {
    "Cold": {
      "High": 20,
      "Low": -10
    },
    "Hot": {
      "High": 60,
      "Low": 20
    }
            },
  "SummaryWords": [
    "Cool",
    "Windy",
    "Humid"
  ]
}
""";
string singleLine = """Friends say "hello" as they pass by.""";
string multiLine = """
    "Hello World!" is typically the first program someone writes.
    """;
string embeddedXML = """
       <element attr = "content">
           <body style="normal">
               Here is the main text
           </body>
           <footer>
               Excerpts from "An amazing story"
           </footer>
       </element >
       """;
// The line "<element attr = "content">" starts in the first column.
// All whitespace left of that column is removed from the string.

string rawStringLiteralDelimiter = """"
    Raw string literals are delimited 
    by a string of at least three double quotes,
    like this: """
    """";

标签:11,00,字面,C#,引号,原始,字符串,文本,string
From: https://www.cnblogs.com/densen2014/p/17673578.html

相关文章

  • virsh启动kvm时提示No such device
    几年前的一个openstack环境,虚机状态异常,手工登陆计算节点启动kvm时报Nosuchdevice[root@server-02~]#virshstartinstance-e346589e-baca-4ae9-8d71-273f23809d98error:Failedtostartdomaininstance-e346589e-baca-4ae9-8d71-273f23809d98error:Cannotgetinterface......
  • PHP extract() Function
    PHPextract()Function定义和用法extract()函数从数组中将变量导入到当前的符号表。该函数使用数组键名作为变量名,使用数组键值作为变量值。针对数组中的每个元素,将在当前符号表中创建对应的一个变量。第二个参数type用于指定当某个变量已经存在,而数组中又有同名元素时,extract......
  • JSONCPP向浏览器前端发送服务器本地文件列表
    服务器解析了浏览器请求之后,要进行响应响应体里需要存放请求的内容HTML标签:是页面的核心内容,定义了页面有什么内容。CSS:控制HTML元素的排版布局和展示方式,是美化页面文档的。JavaScript:让用户与页面进行交互,或在网页背后默默操控网页,以便让显示的内容与效果有所改变。对网页来......
  • 从源码编译OpenCV
    从源码编译的原因官方已经有编译好的包可下载:https://opencv.org/releases/但是在iOS项目中集成官方编译的pack(目前为4.8.0),出现以下错误:ld:in/.../opencv2.framework/opencv2(opencl_kernels_calib3d.o),buildingforiOSSimulator,butlinkinginobjectfilebuiltf......
  • enum hack
    当编译器坚持必须在编译期间知道数组的大小,且不允许static整数型class完成inclass初值设定可使用enumhack补偿做法理论基础:一个属于枚举类型的数值可权充int被使用classWidget{private:enum{num=5};intscores[num];};enumhack的行为比较像#......
  • mac中php安装sqlsrv扩展
     安装php扩展sudopeclinstallsqlsrv-5.10.0sudopeclinstallpdo_sqlsrv-5.10.0 M系列芯片sudoCXXFLAGS="-I/opt/homebrew/opt/unixodbc/include/"LDFLAGS="-L/opt/homebrew/lib/"peclinstallsqlsrv-5.10.0sudoCXXFLAGS="-I/opt/homebre......
  • CentOS分区VG、PV、LV
     CentOS扩容卷组pv、vg、lv的意思物理卷(PhysicalVolume,PV):就是指硬盘分区,也可以是整个硬盘或已创建的软RAID,是LVM的基本存储设备。卷组(VolumeGroup,VG):是由一个或多个物理卷所组成的存储池,在卷组上能创建一个或多个逻辑卷。逻辑卷(LogicalVolume,LV):类似于非LVM......
  • 微服务网关-Spring Cloud Gateway
    为什么需要服务网关:1、什么是服务网关:微服务架构中将一个系统拆分成多个微服务,如果没有网关,客户端只能在本地记录每个微服务的调用地址,当需要调用的微服务数量很多时,它需要了解每个服务的接口,这个工作量很大。那有了网关之后,能够起到怎样的改善呢?网关作为系统的唯一流量入口,封装内......
  • CompletableFuture总结和实践
    CompletableFuture被设计在Java中进行异步编程。异步编程意味着在主线程之外创建一个独立的线程,与主线程分隔开,并在上面运行一个非阻塞的任务,然后通知主线程进展,成功或者失败。一、概述1.CompletableFuture和Future的区别?CompletableFuture和Future出现的原因是继承Thread或者实现R......
  • C# 导出Excel的6种简单方法实现
      更新时间:2019年09月04日10:11:10 作者:JohnsonManohar  C#导出Excel的6种简单方法:数据表导出到Excel,对象集合导出到Excel,数据库导出到Excel,微软网格控件导出到Excel,数组导出到Excel,CSV导出到Excel,你都会了吗?需要的朋友们下面随着小编来一起学习学习吧 ......