0

我想知道如何摆脱字符串末尾的空格。我正在尝试创建一个重复方法,该方法使用默认值将字符串重复一定次数。这就是我到目前为止所拥有的。

    def repeat(word, num = 2)
      num.times do
        print word + " " 
      end
    end

    repeat("hello")

我需要这个给我“你好你好”,但它给了我“你好你好”的空间。我怎样才能摆脱那个额外的空间?我试过剁,但我似乎无法正确实施。

4

3 回答 3

5
def repeat(word, num = 2)
  print ([word] * num).join(" ")
end

repeat("hello")
于 2013-03-20T01:02:37.047 回答
2

如果您为重复方法分配一个新字符串,您可以使用chop!.

它将修改字符串,删除您拥有的最后一个空格。之前,调用chop将返回字符串的副本,从而留下您拥有的空间。

尝试做:

chopped = repeat("hello").chop!
于 2013-03-20T01:03:08.260 回答
0

另一种选择:

def repeat(word, num = 2)
  print ("#{word} " * num).strip
end
于 2013-03-20T02:51:35.813 回答