2017-04-08 87 views
3

我试着让这个perl的命令ruby​​ equivalent perl命令用于替换文件中的换行符?

的等效红宝石命令,这是我的文件

centroid 
100x50+0+0 
28x22+39+9 
19x22+68+12 
15x23+5+13 
15x24+22+10 

这是我自己参考perl的命令:使用此红宝石命令

perl -pe 's/\r?\n/,/' bbb 

林,但它不起作用:

ruby -a -ne 'puts $F[0].gsub(/\r?\n/, ";")' bbb 

请帮帮我

+0

是否有必要帧你在一个Perl的表达方面问题,从而限制了答案对那些熟悉这两种语言的人?你能不能简单地解释你想要做什么? –

+1

@CarySwoveland来吧。在这种情况下,纽布比大多数人做得好得多。我认为我们不需要得到那种迂腐的东西,是吗? – stevieb

回答

2
  • puts print newline;使用print不打印换行符。
  • 使用$F[0],换行不通过,你不需要删除换行符

ruby -a -ne 'print $F[0].gsub(/\r?$/, ";")' bbb 
+0

非常感谢你对我的帮助非常大 – alberto

+1

我刚刚注意到你是[只有SO和Ruby和Python金牌徽章的用户](http://data.stackexchange.com/stackoverflow/query/661694/users-with-golden-红宝石徽章和银色-蟒徽章)。恭喜! –

3
% ruby -p -e 'sub(/\r?\n/, ",")' bbb 
centroid,100x50+0+0,28x22+39+9,19x22+68+12,15x23+5+13,15x24+22+10, 
+0

非常感谢您的帮助 – alberto