23

ルビ文字列が少ないので、左右を適当に揃えたい。

私は今取得するために使用"Name".center(20, " ")しています"(7 spaces)Name(8 spaces)"

どうすれば達成できます"Name(15 spaces)""(15 spaces)Name"

ありがとう。

4

3 に答える 3

42
"Name".ljust(19)
"Name".rjust(19)
于 2013-02-22T10:05:39.973 に答える
8

Rubyには にprintfメソッドが定義されてKernelいるので、それを使ってみてください。

多くの一般的な " f" ("format"、scanfprintf、 ... など) オプションをサポートしています (例 を参照man 3 printf)。

左右の位置合わせは、次のように行うことができます (コメントから抽出)。

printf("%10s", "right")
printf("%-10s","left") 
于 2013-02-22T10:00:40.073 に答える
1

文字のn 個のコピーを挿入

これを行う方法は確かに他にもありますが、そのうちの 1 つは、splat 演算子を使用して文字 (スペース文字など) を特定の回数だけコピーすることです。例えば:

puts (' ' * 15) + 'Name'
puts 'Name' + (' ' * 15)
于 2013-02-22T10:07:53.300 に答える