.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. 4-4 Spring Test

    Spring Test Ⅰ.主要解决的问题 使用SpringTest前 手动加载Sping配置 手动从Spring容器中获取对象 使用SpringTest后 只需要通过注解指定Spring配置类 在S ...

  2. 类型转换_str()函数与int()函数

    数据类型转换 需要将不同数据类型拼接在一起的时候就需要先进行数据类型转换 str+str//这里的+叫做连接字符,有点类似C++中的操作符重载,老对象里面的内容了 在python中整型和字符串类型不能 ...

  3. JS基础小练习

    入职薪水10K,每年涨幅入职薪水的5%,50年后工资多少? var sum = 10000; console.log(sum * (1 + 0.05 * 50)); 为抵抗洪水,战士连续作战89小时, ...

  4. 6.17 NOI 模拟

    \(T1\ crime\) 计算几何\(+\)最短路,我的写法很麻烦 比较无脑,直接扫一遍判断能否连接即可,需要特别判断对角线的情况 #include<bits/stdc++.h> #de ...

  5. 关于mybatis-plus出现Not Found TableInfoCache. 的解决方法

    查看自己的pom里面是不是导入了多个mybatis相关,若是的话就全部删去,然后添加如下代码段即可 <dependency> <groupId>com.baomidou< ...

  6. Java集合容器的深度理解

    Java容器里有很多写好的容器API,这使我们很方便的可以存储.操作我们的数据. 下面是我写的容器的特点,一些容器的不同之处,从底层源码解析一下容器实现原理 一.常用的容器目录 上图可以看出,java ...

  7. Luogu1137 旅行计划 (拓扑排序)

    每次入队时DP : \(f[v] = \max \{f[u] + 1\}\) #include <iostream> #include <cstdio> #include &l ...

  8. RAID磁盘阵列技术

    RAID磁盘阵列技术 1.RAID概述 RAID(Redundant Array of Independent Disk),从字面意思讲的是基于独立磁盘的具有冗余的磁盘阵列,其核心思想是将多块独立磁盘 ...

  9. Springboot+MybatisPlus多数据源比对数据

    欢迎关注博主公众号「Java大师」, 专注于分享Java领域干货文章https://www.javaman.cn/ 基于不同的数据源进行数据比对,比较两个数据库的表之间数据的总量,以及处理后的总量,按 ...

  10. html页面中插入html的标签,JS控制标签属性

    html页面中插入html的标签 方法1: 使用标签: <textara> </textara>标签 方法2: 使用JS: document.getElementById(&q ...