Подтвердить что ты не робот

Как выровнять рубиновую строку влево или вправо?

У меня есть несколько строк ruby, которые я хочу соответствующим образом выровнять влево и вправо.

Теперь я использую "Name".center(20, " ") для получения "(7 spaces)Name(8 spaces)"

Как я могу достичь "Name(15 spaces)" или "(15 spaces)Name"

Спасибо.

4b9b3361

Ответ 1

"Name".ljust(19)
"Name".rjust(19)

Ответ 2

Ruby имеет printf метод, определенный в Kernel, попробуйте использовать это.

Он поддерживает множество распространенных "f" ( "формат", например, в параметрах scanf, printf,...) (см., например, man 3 printf).

Левое и правое выравнивание может быть выполнено следующим образом (извлечено из комментария):

printf("%10s", "right")
printf("%-10s","left") 

Ответ 3

Вставка n Копии символа

Есть, конечно, другие способы сделать это, но один из них - использовать оператор splat для копирования символа (например, символа пробела) определенное количество раз. Например:

puts (' ' * 15) + 'Name'
puts 'Name' + (' ' * 15)