Ответ 1
"Name".ljust(19)
"Name".rjust(19)
У меня есть несколько строк ruby, которые я хочу соответствующим образом выровнять влево и вправо.
Теперь я использую "Name".center(20, " ")
для получения "(7 spaces)Name(8 spaces)"
Как я могу достичь "Name(15 spaces)"
или "(15 spaces)Name"
Спасибо.
"Name".ljust(19)
"Name".rjust(19)
Ruby имеет printf
метод, определенный в Kernel
, попробуйте использовать это.
Он поддерживает множество распространенных "f
" ( "формат", например, в параметрах scanf
, printf
,...) (см., например, man 3 printf
).
Левое и правое выравнивание может быть выполнено следующим образом (извлечено из комментария):
printf("%10s", "right")
printf("%-10s","left")
Есть, конечно, другие способы сделать это, но один из них - использовать оператор splat для копирования символа (например, символа пробела) определенное количество раз. Например:
puts (' ' * 15) + 'Name'
puts 'Name' + (' ' * 15)