2016-11-21 9 views
5

私はRubyが新しく、指定された文字列や配列の書式設定を自動化するプログラムを作成しようとしています。私が把握しようとしている1つのオートフォーマット機能は、配列の1つです。それでは、私はルビー配列を素敵な列文字列に変換しますか?

myArray = ["a", "b", "c"] 

以下の例のような配列を持っていると私は私がこれを行うに行くかどう

`1) a` 
`2) b` 
`3) c` 

を与えるputs myStringようcolumnized文字列にそれを有効にするとしましょうか?私が見つけることができる最も近いものは、私が欲しいものではない.eachを使用している、私はそれぞれの行に別のエントリを持つことはできません。すべてが改行付きの1つの文字列でなければなりません。

任意の助けをいただければ幸い、おかげで事前

+0

何この 'myArray.each_with_index.map {程度を|私、j | "#{i + 1})#{j}"}。join( "\ n") ' –

答えて

9

にあなたは.with_index.mapを使用することができます。

myArray = ["a", "b", "c"] 

myStr = myArray.map.with_index(1) { |el, i| "#{i}) #{el}" }.join("\n") 
puts myStr 

出力:

1) a 
2) b 
3) c 
+0

OPのユースケースでは、'#{i + 1} 'が必要です。 –

+1

ああ、良いキャッチ - ありがとう。 – Anthony

+0

心配はいりません。あなたの答えはかなりエレガントです。 –

関連する問題