web-dev-qa-db-ja.com

改行文字を文字列に貼り付けずに、「puts」で余分な改行を追加するにはどうすればよいですか?

私が言うなら

puts "Hello"

そして、私がこれを行う必要がある余分な改行を追加することにします:

puts "Hello\n"

文字列にこの文字を含めるのは醜いです。文字列を汚染せずにこれを行う方法はありますか?

30
Tim

putsをもう一度呼び出すだけです。

puts "Hello"
puts
48
mipadi
puts "Hello",""
23
Michiel de Mare

私はよくRubyに定数を追加してこれらの文字を含めるようにしています

NEW_LINE = "\n"

puts "Hello" + NEW_LINE

私はそれがより読みやすく、誰かが後日別の何かで各行を区切ることに決めた場合にすべての改行文字を簡単に変更できると思います。

3
Anthony

これは見栄えがいいと思いますか?


puts "Hello"+$/

</悪>

2
Geo

Rubyが改行に「\ n」を使用する理由は、Cに基づいているためです。Ruby MRIはCで記述され、JRubyもJavaで記述されます。 Cに基づいているC++に基づいています...あなたはアイデアを得ます!したがって、これらすべてのCスタイル言語は、新しい行に「\ n」を使用します。

Putのように動作する独自のメソッドをいつでも記述できますが、メソッドのパラメーターに基づいて新しい行を追加します。

2
Lennie

あなたはただ書くことができます

p "Hello"
p 

あなたがそれを短くてシンプルに保ちたいなら、それはうまくいくはずです

1
cjl5108

修正したいもの:スクリプトの入力:

puts "Hello there"
puts "Goodbye"

スクリプトからの出力:

Hello thereGoodbye

問題の修正:スクリプトの入力:

puts "Hello there"
puts
puts "Goodbye"

スクリプトからの出力:

Hello there
Goodbye
0
Nathan

まあ、明示的な改行は醜いとは思いません。ミパディの答えも同様に結構です。ちょうど別の答えを投入するために、行の配列を作成し、次にarayを改行で結合します。 :)

0
EBGreen