C# 替换“换行符”写法

C# 替换“换行符”写法

一般处理可以使用 Replace("\r\n", ""); 来替换,如从数据库中读取的数据、文本框的输入等。

一些情况下需要使用以下:

Replace(Convert.ToChar(10).ToString(), "");
 
Replace(Convert.ToChar(13).ToString(), "");

如用gb2312读取文件时。


C#语言,用正则表达式将大量 替换为回车

正则表达式

using System.Text.RegularExpressions;

test = Regex.Replace(test,"
","\\n");
test = Regex.Replace(test,"
","\\n");

//这种也行
//test = Regex.Replace(test,Convert.ToChar(13).ToString(), "");
//test = Regex.Replace(test,Convert.ToChar(10).ToString(), "
");

C# 中的回车换行符

C# 中,我们用字符串 “\r\n” 表示回车换行符。

string str = "第一行\r\n第二行";

但是我们更推荐 Environment.NewLine(名称空间为 System),Environment 是类,NewLine 是字符串属性,用于获取当前环境中定义的回车换行符字符串。

string str = "第一行" + Environment.NewLine + "第二行";

Windows 环境中,C# 语言 Environment.NewLine == "\r\n" 结果为 true

小知识

名称 英文 描述 ASCII 值 C# 表示
回车符 Carriage Return 回到一行开头 13 \r
换行符 New Line 下一行开头位置 10 \n

回车换行符有时也简称为回车符或换行符



C#字符串替换,正则方式

string json = "ah55/df+56556f/dff+sa1";
json = Regex.Replace(json, "[/]", @"%2F");
json = Regex.Replace(json, "[+]", @"%2B");

将字符串中的 “/” 转换成"%2F" ; “+” 转换成"%2B"


windows下按ENTER键应该是\r\n ascii码为 13 10

记得在Windows下学X86汇编语言时,用0DH(\r)和0AH(\n)来输出回车(跳到下一行的开始处)。问题来了,在Windows下是 先回车再换行呢还是先换行再回车呢?在Unix系统下换行只有\n,MAC OS下只有\r(网上是这么说的, 没用过Mac OS, 无从证实),都不会出现上述的问题。

现在新建一个文本文档,其内容如下:
C# 替换“换行符”写法_第1张图片
现在用C语言二进制形式将其读入字符串(可以参考我的一篇文章:http://blog.csdn.net/lgouc/article/details/7815474)并按十进制输出。结果如下
在这里插入图片描述
可以看出回车是1310也就是\r\n,即先回车后换行。

下面我们看看将ab之间的\r\n互换后会是什么效果:
C# 替换“换行符”写法_第2张图片

你可能感兴趣的:(.NET,正则表达式)