1

ruby 的 puts 或 print 可以像 bash 和 printf+tr 一样绘制水平线吗?

printf '%20s\n' | tr ' ' -

这将绘制:

--------------------
4

5 回答 5

6

您可以使用以下代码段

puts "-"*20

检查以获得更多帮助。

您可能也对使用ljustrjustcenter进行格式化感兴趣。

于 2013-11-12T16:50:19.623 回答
3

我使用快速puts "*"*80进行调试。我确信有更好的方法。

于 2013-11-12T16:50:12.497 回答
1

对于花哨的线条:

p 'MY_LINE'.center(80,'_-')
#=> "_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-MY_LINE_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_"
于 2013-11-12T17:23:42.473 回答
1

您还可以拥有以下内容:

puts "".center(20, "-")

irb(main):005:0> puts "".center(20, '-')
=> "--------------------"

如果您想添加其他信息,这可能会更灵活:

irb(main):007:0> puts "end of task".center(20, "-")
----end of task-----
=> nil
于 2013-11-12T17:31:06.053 回答
0

您也可以使用String#ljustString#rjust

puts ''.rjust(20,"-")
# >> --------------------
puts ''.ljust(20,"-")
# >> --------------------
于 2013-11-12T18:18:35.273 回答