Bre*_*mbs 5 c# regex string replace
我怎么能代替\r用的\r\n的时候\r被后面没有\n使用正则表达式?
我在Windows上创建文本编辑器时出现问题,因为换行符被添加为\ r \n.因此,当我在记事本中打开文件时,它们不会被读取为换行符.
我已经尝试到处寻找(谷歌,堆栈溢出等),但一直无法找到专门为我所追求的东西.
到目前为止,我所尝试的所有东西都是我第一次做的事情,但是\r即使它们后面跟着它,它也会不必要地取代它\n.
供参考,这是表达式:
"\r(?!^\n)", "\r\n"
Run Code Online (Sandbox Code Playgroud)
你需要使用
\r(?!\n)
Run Code Online (Sandbox Code Playgroud)
也就是说,^从\r(?!^\n)表达式中删除字符串/行修饰符的开头.在\r将匹配一个回车和(?!\n)如果有一个LF立即显示在其右边会失败的比赛.
一个C#演示:
var s = "Line1\rLine2\r\nLine3";
var res = Regex.Replace(s, "\r(?!\n)", "\r\n");
Console.WriteLine(res.Replace("\r","CR").Replace("\n","LF\n"));
// => Line1CRLF
// Line2CRLF
// Line3
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
689 次 |
| 最近记录: |