2017-04-08 85 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