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
\00x0000
\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"   //@后面的字符全部按字面意思解释(如该语句中的\不再视作转义序列的,而是直接视作一个字符)

转载于:https://www.cnblogs.com/qt-ttxs/p/8580041.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值