.Net7 的到来的同时,也带来了 C# 11,而令我最期待的就是 C# 11 的 原始字符串了,当我知道这个的时候,简直比过年还要开心。

非原始字符串

  首先我们看看现在写字符串的方式

var str = @"
雪莉:""有人在吗?""
神乐:""他们有事出去了,你有什么困扰呢? 万事屋神乐为您服务阿鲁!""
雪莉:""作为一个ssr,却被大家说点击就送,我也太卑微了!怎样才能让我更有魅力,更受欢迎呢!""
神乐:""没问题阿鲁!全都交给我吧!""";

  这还算是好的,如果是 json 字符串,那简直是伤眼睛,敲起来也非常麻烦,当然,不建议真的手动敲啊,弄个实体类,然后序列化一下就好,这里只是举个例:

var json = "[\r\n" +
" {\"name\":\"雪莉\",\"say\":\"有人在吗?\"},\r\n" +
" {\"name\":\"神乐\",\"say\":\"他们有事出去了,你有什么困扰呢? 万事屋神乐为您服务阿鲁!\"},\r\n" +
" {\"name\":\"雪莉\",\"say\":\"作为一个ssr,却被大家说点击就送,我也太卑微了!怎样才能让我更有魅力,更受欢迎呢!\"},\r\n" +
" {\"name\":\"神乐\",\"say\":\"没问题阿鲁!全都交给我吧!\"}\r\n" +
"]";

  我们将上面的两个字符串输出到页面上

原始字符串

  而使用了 原始字符串 是什么样子的呢,我们一起来看看吧

var str = 
"""
雪莉:"有人在吗?"
神乐:"他们有事出去了,你有什么困扰呢? 万事屋神乐为您服务阿鲁!"
雪莉:"作为一个ssr,却被大家说点击就送,我也太卑微了!怎样才能让我更有魅力,更受欢迎呢!"
神乐:"没问题阿鲁!全都交给我吧!"
""";

  再看看 json 字符串的

var json =
"""
[
{"name":"雪莉","say":"有人在吗?"},
{"name":"神乐","say":"他们有事出去了,你有什么困扰呢? 万事屋神乐为您服务阿鲁!"},
{"name":"雪莉","say":"作为一个ssr,却被大家说点击就送,我也太卑微了!怎样才能让我更有魅力,更受欢迎呢!"},
{"name":"神乐","say":"没问题阿鲁!全都交给我吧!"}
]
""";

  同样,我们将它输出到页面上

  一样样的,是不是非常爽!让我们成为 萌妹 萌妹 萌妹!!!

实际生成的字符串

  接着我们分别调试一下看看生成的字符串是怎样的

  非原始字符串

  原始字符串

  可以看到,生成出来的是一样的,所以 原始字符串只是一个语法糖,它的作用只是方便了我们平时的开发。

  好了,惯例感谢大佬们的观看,拜拜!

  原文链接:https://www.cnblogs.com/ysmc/p/16730755.html

.Net 7 C#11 原始字符串的更多相关文章

  1. 什么是 C++ 11 原始字符串?

    std::string path = "C:\\VulkanSDK";//需要转义 std::string path = R"(C:\VulkanSDK)";/ ...

  2. C#11之原始字符串

    最近.NET7.0和C#11相继发布,笔者也是第一时间就用上了C#11,其中C#11的有一个更新能解决困扰我多年的问题,也就是文章的标题原始字符串. 在使用C#11的原始字符串时,发现的一些有意思的东 ...

  3. c++11 R+字符串

    R+字符串 prefix(optional) R"delimiter(raw_characters)delimiter" (6) (since C++11) C++11引入了原始字 ...

  4. .Net 7内容汇总(2)--原始字符串

    在C# 11里,添加了一个叫原始字符串的东西. 这个东西算是我相当喜欢以及期待的功能. 我们先来看看这玩意咋用. 首先,我们先来看看之前如果我们需要定义一个带引号的字符串我们需要怎么做. var a ...

  5. JAVA----编程列出一个字符串的全字符组合情况,原始字符串中没有重复字符

    package com.pb.demo.packclass.demo1; import java.util.HashSet; /** * 编程列出一个字符串的全字符组合情况,原始字符串中没有重复字符 ...

  6. devi into python 笔记(六)正则表达式 原始字符串

    字符串函数replace: #string.replace: #字符串的replace方法:替换子串,不改变原来的字符串 s = "broad road" #打印出来会发现不单单是 ...

  7. python原始字符串

    str1='let's go' File "<input>", line 1 str1='let's go' ^ SyntaxError: invalid syntax ...

  8. 1.11 str 字符串

    字符串属于不可变序列,是 文本序列. 字符串的声明 >>> #字符串的声明既可以用单引号也可以用双引号,这两个能方法在效果上是一样的 >>> s = '' > ...

  9. Python基础语法——(引号、字符串、长字符串、原始字符串、Unicode)

    一.单引号字符串和转义引号 当字符串中出现单引号'时,我们可以用双引号""将该字符串引起来:"Let's go!" 而当字符串中出现双引号时,我们可以用单引号' ...

随机推荐

  1. Solution -「校内题」Xorequ

    0x00 前置芝士 数位dp考试里出现的小神题?? 显然考场会选择打表找规律. 数位dp + 矩阵快速幂 0x01 题目描述 给定正整数 \(n\),现有如下方程 \(x \bigoplus 3x = ...

  2. Mysql性能调优-工具篇

    EXPLAIN 首先祭出官方文档(这是5.7的,请自行选择版本): Understanding the Query Execution Plan 英文不想看,就看这篇吧: 全网最全 | MySQL E ...

  3. 第十五天python3 文件IO(一)

    一.文件打开 open(path,flag[,encoding][,errors]) 参数说明: path:要打开文件的路径 flag:打开方式( r:以只读的方式打开文件,文件的描述符放在文件开头 ...

  4. Vue ref属性 && props配置项

    1 // # ref属性: 2 // # 1.用来给元素或者子组件注册引用信息(id的替代者) 3 // # 2.应用在html标签上获取的是真实的DOM元素,应用在组件标签上是组件实例对象(vc) ...

  5. Python 支付宝红包二维码制作步骤分享

    本文所有教程及源码.软件仅为技术研究.不涉及计算机信息系统功能的删除.修改.增加.干扰,更不会影响计算机信息系统的正常运行.不得将代码用于非法用途,如侵立删! 支付宝红包二维码制作步骤分享 2022. ...

  6. 技术分享 | 在GreatDB分布式部署模式中使用Chaos Mesh做混沌测试

    GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. 1. 需求背景与万里安全数据库软件GreatDB分布式部署模式介绍 1.1 需求背景 混沌测试是检测分布式系统不确定性.建 ...

  7. 我在叽里呱啦折腾 DolphinScheduler 的日子

    作者简介:wade,叽里呱啦攻城狮一枚,曾就职于苏宁,同花顺等,9个月大粿粿的爸爸. 前言 "工欲善其事,必先利其器" 在 2019 年进行数仓建设时,选择一款易用.方便.高效的调 ...

  8. RISC-CPU设计和 FPGA 实现

    摸鱼的时候找到一份单周期和多周期的riscv的fpga实现,还是挺符合我的预期的 知乎专栏地址:https://www.zhihu.com/column/c_1530950608688910336

  9. 搭建 Webpack 项目步骤

    前言 Node.js 就像是 Java 的虚拟机 + JDK,可以让 js 脱离浏览器沙盒,且提供模块机制.I/O 操作.数据库操作.网络操作等.Node.js 又提供了大量的库,NPM(类似于 Ma ...

  10. mybatispluys-Mapper CRUD 接口

    Mapper CRUD 接口 通用 CRUD 封装BaseMapper (opens new window)接口,为 Mybatis-Plus 启动时自动解析实体表关系映射转换为 Mybatis 内部 ...