一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

C# 字符串转义详解

时间:2016-05-26 编辑:简简单单 来源:一聚教程网

C#转义字符:

·一种特殊的字符常量;
·以反斜线"\"开头,后跟一个或几个字符。
·具有特定的含义,不同于字符原有的意义,故称“转义”字符。
·主要用来表示那些用一般字符不便于表示的控制代码。
·它的作用是消除紧随其后的字符的原有含义
·用一些普通字符的组合来代替一些特殊字符,由于其组合改变了原来字符表示的含义,因此称为“转义”
·用可以看见的字符表示那不可以看见的字符, 如'\n'表示换行

常用的转义字符及其含义:
\’ 单引号
\” 双引号
\\ 反斜杠
\0 空
\a 警告(产生峰鸣)
\b 退格
\f 换页
\n 换行
\r 回车
\t 水平制表符
\v 垂直制表符


 c#里 @ 表示的是:
在C#中,"c:\\temp"表示路径是c:\temp; 而@"c:\temp"就表示c:\temp;

所以,@的作用就应该是忽略转义字符的作用.

应用例子

题根源:
我获取网络的数据格式是json格式,解析完之后发现 全都是 
\\u53cc\\u6c27\\u6c34\\u4ef7\\u683c 
这样 想转成

\u53cc\u6c27\u6c34\u4ef7\u683c

找了好久,通过QQ群,感谢网友的帮助!
给了两种方法:

var b = Regex.Replace("\\u53cc\\u6c27\\u6c34\\u4ef7\\u683c", @"\\u([0-9a-f]{4})", (Match m) =>
           {
               return ((char)Convert.ToInt32(m.Groups[1].Value, 16)).ToString();
           });
 Console.WriteLine(b);

第二种:

Console.WriteLine(Regex.Unescape("\\u53cc\\u6c27\\u6c34\\u4ef7\\u683c"));

热门栏目