上善若水

水善利万物而不争
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

.NET 特殊字符转义

Posted on 2013-01-11 22:19  董锡振  阅读(839)  评论(0编辑  收藏  举报

当声明一个字符串变量时有一些字符是不能以平常的方式包含在变量中的。为了解决这个问题,C#提供了两种不同的方法。

第一种方法是使用’转义序列’。例如,我们想得到如下的字符串

“Hello World

How are you”

我们可以使用下面的语句声明字符串:string a = "\"Hello World\nHow are you\""。这条语句中使用了”和换行符的转义序列。更多字符的转义序列可以参见下表:

   

Character

Escape Sequence

'

\'

"

\"

\

\\

警报

\a

退格符

\b

换页符

\f

换行符

\n

回车符

\r

Tab 符

\t

垂直 Tab 符

\v

使用数字指定的Unicode 字符,如\u2000

\u

使用十六进制数指定的Unicode 字符,如\xc8

\x

空值

\0 (zero

第 二种方法是使用’逐字字符串’文本。这种方法将想要得到的字符串放在@”和”之间。假如我们需要将C:\My Documents\赋值给’path’,我们可以使用转义序列方法:string path = "C:\\My Documents\\";也可以使用如下的语句:string path = @"C:\MyDocuments\"。

通 过使用后一种方法得到的字符串还可以横跨多行而不需要使用’\n’。使用这种方法唯一需要使用到转义序列的字符串是”,其转义字符为””(两个连在一起的 双引号)。例如想将the word "big" contains three letters.赋值给’text’,我们就可以使用如下的语句:string text = @"the word ""big"" contains three letters."。

转义符     字符名

\'            单引号
\"           双引号
\\           反斜杠
\0          空字符
\a          感叹号
\b          退格
\f           换页
\n          新行
\r           回车
\t           水平 tab
\v          垂直tab

\\           \
\|            |
\.           .
\-           -
\^          ^
\?          ?
\*          *
\+          +
\{          {
\}           }
\(           (
\)           )
\{           {
\}           }
\[            [
\]            ]