R - 正则表达式 - 用一个\ r \ n替换多个\ r \ n(CRLF)

时间:2016-04-03 20:46:33

标签: regex r text-processing

我尝试了gsub(" [\ r \ n] +"," \ r \ n",textDoc)但它似乎单独处理\ r和\ n,而不是单个字符串?

编辑 -

"This is a line! It ends with a CRLF!\r\n

\r\n

\r\n

There is more stuff down here! I want it directly below the other stuff! Get rid of those two blank lines! Actually, ANYTIME I have blank lines, lets remove them!\r\n"

1 个答案:

答案 0 :(得分:2)

[\r\n]+使用带[]的char类。这就是char类的工作方式。

您希望()成为捕获组:(\r\n)+

编辑:

实现此问题存在一些问题,因为它插入了额外的\r

经过多次评论后,我猜测替换应该只是\n,并且添加了\r\n(按预期)。

我不完全确定为什么会发生这种情况,但我认为在确保跨系统兼容性的某个地方,\n映射到\r\n,因此\r\n地图到\r\r\n