如何删除回车并将其替换为文本文件中的空格?

时间:2014-04-28 13:00:55

标签: perl

我正在阅读一个文本文件,所以我想要的是: 删除回车并在单词之间添加空格。

我试过了,但是我收到了错误

 $text =~ s/\n+/\s/g;

2 个答案:

答案 0 :(得分:3)

替换的右侧是字符串,而不是正则表达式,因此您放置了一个文字空格而不是\s

$text =~ s/\n+/ /g;

答案 1 :(得分:1)

就像 Zaid 说的那样。

如果你想使用更强大的(跨平台)正则表达式,我建议这个

(\r?\n|\r\n?)+

所以你的代码变成了:

$text =~ s/(\r?\n|\r\n?)+/ /g;

如果你想用一行命令来做,你可以这样做:

perl -pi -e 's/(\r?\n|\r\n?)+/ /g' your_file