我有一些代码:
line_width = 26
ch3 = "Chapter 3: Letters page 13"
puts(ch3.ljust(line_width/2) + ch3.rjust(line_width/2))
#=> Chapter 3: Letters page 13Chapter 3: Letters page 13
我希望将输出分割到中间,如下所示:
Half-Text__________________________________________________Half-Text
我该怎么做?
答案 0 :(得分:1)
您需要先将文本拆分为两个。
line_width = 26
ch3 = "Chapter 3: Letters page 13"
ch3 = ch3.split(/\s(?=page)/) #=> ["Chapter 3: Letters", "page 13"]
puts(ch3[0].ljust(line_width / 2) + ch3[1].rjust(line_width / 2))
此输出
Chapter 3: Letters page 13
答案 1 :(得分:0)
如果我理解正确,我不会在这里使用ljust
和rjust
。
line_width = 40
ch3 = "Chapter 3: Letters page 13"
left, right = ch3.split(/\s(?=page\s+\d+)/)
#=> ["Chapter 3: Letters", "page 13"]
puts left + ' '*(line_width-left.size-right.size) + right
打印
Chapter 3: Letters page 13
请注意' '*(line_width-left.size-right.size)
创建一个由
line_with-left.size-right.size
#=> 40 - 18 - 7 => 15
空间。