如何将ruby字符串向左或向右对齐?

如何将ruby字符串向左或向右对齐?,ruby,string,Ruby,String,我有几个ruby字符串,我想适当地左右对齐 我现在使用“Name.center(20)”来获得“(7个空格)Name(8个空格) 如何实现“名称(15个空格)”或“(15个空格)名称” 谢谢。Ruby在内核中定义了一个方法,请尝试使用它 它支持许多常见的“f”(“格式”,如scanf,printf,…)选项(例如,请参见man 3 printf) 左对齐和右对齐可以这样做(摘自注释): 插入字符的n个副本 当然还有其他方法可以做到这一点,但其中之一是使用splat操作符将字符(例如空格字符)复制

我有几个ruby字符串,我想适当地左右对齐

我现在使用
“Name.center(20)”
来获得
“(7个空格)Name(8个空格)

如何实现
“名称(15个空格)”
“(15个空格)名称”

谢谢。

Ruby在
内核中定义了一个方法,请尝试使用它

它支持许多常见的“
f
”(“格式”,如
scanf
printf
,…)选项(例如,请参见
man 3 printf

左对齐和右对齐可以这样做(摘自注释):

插入字符的n个副本 当然还有其他方法可以做到这一点,但其中之一是使用splat操作符将字符(例如空格字符)复制一定次数。例如:

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

谢谢我认为sawa的解决方案更优雅,可读性更强。这里没有右对齐,只有左对齐printf(“%10s”,“string here”)表示右对齐printf(“%10s”,“string here”)表示左对齐
"Name".ljust(19)
"Name".rjust(19)
puts (' ' * 15) + 'Name'
puts 'Name' + (' ' * 15)