簡體   English   中英

Ruby-將多行字符串居中

[英]Ruby - Centering a multi-line string

在Ruby中,我想將多行字符串居中,使其顯示在屏幕中間。 我查找了Class:String Ruby文檔,還搜索了Google,但找不到解決方案。

這是我嘗試過的。 在這里,我在每行之后使用換行符\\ n作為換行符,因此不必在每行上鍵入puts和引號。 我還要在字符串末尾輸入String類的center方法,因為我希望所有行都居中,而不必在每一行之后都調用該方法。

def draw_string
  puts "******** \n
        ******** \n
        ******** \n
        ********".center(150)
end

當我調用draw_string時,這就是我想要看到的

                                   ********
                                   ********
                                   ********
                                   ******** 

這就是我得到的

                                   ******** 
******** 
******** 
********

請不要問我為什么要以此為中心,但是請提供建議。 這是非常贊賞

您需要將每條線分別居中。 Ruby的字符串類不支持將多行字符串居中。

使用簡單的split / map / join組合:

def draw_string
  puts "********
        ********
        ********
        ********".lines.map { |line| line.strip.center(150) }.join("\n")
end

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM