C#给字符串赋予字面值——字符串插入、转义序列的使用
1.占位符、字符串插入
给字符串赋予字面值时,经常遇见在字符串中包含变量的情况,用连接符进行拼接、转换的方式比较麻烦、还容易出错。C#提供了较为便捷的处理方式,即‘占位符’,以及C#6的新功能‘插入字符串’(没记错的话是VS2015及后续新版本可用该功能)。下面举个简单的例子说明用法:
string a="A friend in need";
string b="a friend indeed.";
想要输出A friend in need is a friend indeed.这句话,可选择如下方式:
(1)占位符
Console.WriteLine(“{0}is{1}”,A friend in need,a friend indeed.");
/*字符串里面需要使用变量的时候,先在该位置使用{ 编号}占位符(编号从0开始),再在后面相应位置写内容*/
(2)插入字符串
Console.WriteLine($"{a} is {b}");
/*在双引号前面加$,然后把双引号里面的变量用{ }括起来,双引号内的变量即可按变量所代表的内容输出*/
2.转义序列
以下内容转载自夜店耍流氓的博客
原文链接:C#中字符串的字面值(转义序列)
在程序开发中,经常会碰到在字符串中字面值中使用转义序列,下面表格收集了下转义序列的完整列表,以便大家查看引用:
| 转义序列 | 产生的字符 | 字符的Unicode值 |
| \' | 单引号 | 0x0027 |
| \" | 双引号 | 0x0022 |
| \\ | 反斜杠 | 0x005C |
| \0 | 空 | 0x0000 |
| \a | 警告(产生蜂鸣) | 0x0007 |
| \b | 退格 | 0x0008 |
| \f | 换页 | 0x000C |
| \n | 换行 | 0x000A |
| \r | 回车 | 0x000D |
| \t | 水平制表符 | 0x0009 |
| \v | 垂直制表符 | 0x000B |
表中的“Unicode值”列是字符在Unicode字符集中的16进制值。使用Unicode转义序列可以指定Unicode字符,该转义序列包括标准的\字符,后跟一个u和一个4位十六进制值(例如,表中x后面的4位数字)。
下面的字符串是等价的:
"Karli\'s string."
"Karli\u0027s string."
显然,Unicode转义序列还有更多用途。
也可以逐字地指定字符串,即两个双引号之间的所有字符都包含在字符串中,包括行末字符和需要转义的字符。唯一例外是双引号字符的转义,它们必须指定,以免结束字符串。为此,可以在该字符串之前加一个@字符:
@"Verbatim string literal."
可以采用一般方式指定这个字符串,但需要使用下面这种方法:
@"A short list:
item 1
item2"
逐字指定的字符串在文件名中非常有用,因为文件名中大量使用了反斜杠字符。如果使用一般的字符串,就必须在字符串中使用两个反斜杠,例如:
"c:\\Temp\\MyDir\\MyFile.doc"
而有了逐字指定的字符串字面值,这段代码就更便于阅读。下面的字符串与上面的等价:
@"c:\Temp\MyDir\MyFile.doc" //@后面的字符全部按字面意思解释(如该语句中的\不再视作转义序列的,而是直接视作一个字符)
C#给字符串赋予字面值——字符串插入、转义序列的使用的更多相关文章
- C#中字符串的字面值(转义序列)
在程序开发中,经常会碰到在字符串中字面值中使用转义序列,下面表格收集了下转义序列的完整列表,以便大家查看引用: 转义序列列表 转义序列 产生的字符 字符的Unicode值 \' 单引号 0x0027 ...
- js 字符串分割成字符串数组 遍历数组插入指定DOM里 原生JS效果
使用的TP3.2 JS字符串分割成字符串数组 var images='{$content.pictureurl} ' ;结构是这样 attachment/picture/uploadify/20141 ...
- linux sed在某些字符串的下一行插入内容?sed在下一行插入?
需求描述: 今天在配置nrpe的时候,使用到了在搜索到某些字符串之后,然后在字符串的下一行进行插入字符串 在此记录下如何实现. 即通过sed的a命令实现内容的追加. 操作过程: 1.查看原文件中的内容 ...
- 笔记:iOS字符串的各种用法(字符串插入、字符串覆盖、字符串截取、分割字符串)(别人的代码直接复制过来的,我脸皮有点厚)
NSString* str=@"hello";//存在代码区,不可变 NSLog(@"%@",str); //1.[字符串插入] NSMutableString ...
- iOS字符串的各种用法(字符串插入、字符串覆盖、字符串截取、分割字符串)
NSString* str=@"hello";//存在代码区,不可变 NSLog(@"%@",str); //1.[字符串插入] NSMutableString ...
- 016 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 10 布尔类型和字符串的字面值
016 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 10 布尔类型和字符串的字面值 本文知识点:字面值 关于字面值的概念,需要注意:很多地方,我们可能就把字面值 ...
- C#字符串处理 及字符串格式化
本文来自:http://www.cnblogs.com/xuerongli/archive/2013/03/23/2976669.html string字符串是char的集合,而char是Unicod ...
- 随笔 JS 字符串 分割成字符串数组 并动态添加到指定ID的DOM 里
JS /* * 字符串 分割成字符串数组 并动态添加到指定ID的DOM 里 * @id 要插入到DOM元素的ID * * 输入值为图片URL 字符串 * */ function addImages(i ...
- Qt字符串类——1.字符串常用的几种操作
字符串有如下几个操作符: (1)QString提供了一个二元的"+"操作符用于组合两个字符串,并提供了一个"+="操作符用于将一个字符串追加到另一个字符串的末尾 ...
随机推荐
- C#语法——元组类型
元组Tuple 我们现在使用的C#语法已经可以满足日常的开发需求,但C#语法还在进行版本的更新,在创造更多更优秀的语义来让我们使用.这里介绍一下C#5.0里的提供的语法——元组. 在C#中定义T ...
- 数据结构——Java实现单链表
一.分析 单链表是一种链式存取的数据结构,用一组地址任意的存储单元存放线性表中的数据元素.链表中的数据是以结点来表示的,每个结点由元素和指针构成.在Java中,我们可以将单链表定义成一个类,单链表的基 ...
- 配置多版本jdk
配置办法https://blog.csdn.net/qq342643414/article/details/78364601 可能会遇到的问题https://www.cnblogs.com/chuij ...
- Spring SpringMVC MyBatis配置笔记
工程大致结构: project |-src |----pojo |--------Temp.java |----dao |--------TempDao.java |--------TempDao.x ...
- JavaScript基础-3
3 运算符 按照个数分类可分为:一元运算符.二元运算符.三元运算符: 按照功能分类可分为:算数运算符.自增运算符.比较运算符.逻辑运算符.赋值运算符: 3.1 算数运算符 算术运算符包含了加减乘除,符 ...
- MySQL逻辑架构概述
1.MySQL逻辑架构 MySQL逻辑架构图 MySQL逻辑架构分四层 1.连接层:主要完成一些类似连接处理,授权认证及相关的安全方案. 2.服务层:在 MySQL据库系统处理底层数据之前的所有工作都 ...
- H5、C3、ES6的新特性
H5的新特性 1.语义化标签 有利于SEO,有助于爬虫抓取更多的有效信息,爬虫是依赖于标签来确定上下文和各个关键字的权重. 语义化的HTML在没有CSS的情况下也能呈现较好的内容结构与代码结构 方便其 ...
- AFO && OI回忆录
技不如人,甘拜下风 今天是2019.4.6,联考第一天,菜鸡attack原题爆炸(其实是都不会)心灰意冷(其实并没有很难过)写下了这篇文章 T1 2h写个跟\(k\)无关的假算法写到最后发现是三个lo ...
- selenium-确认进入了预期页面
selenium确认进入了预期页面 在自动化操作中,浏览器每次进入一个新的需要,都需要确认该页面是否打开或打开的页面是否是预期的页面 需要进行确认页面后方可进行下一步操作 确认页面有很多中方法,像每个 ...
- Android应用跳转到微信和支付宝扫一扫
新版的微信已经把微信功能的schema都禁掉了,意味着我们无法打开微信的扫一扫等功能,目前正常的只能先进入微信(我测试的时候是微信版本7.0.3)已经是很新的版本了 具体调起微信扫一扫代码如下,测试后 ...