附加到现有的string
追加到现有的string,这是我正在做的事情。
s = 'hello' s.gsub!(/$/, ' world');
有没有更好的方法来追加到现有的string。
在有人build议下面的答案之前,先让我们看看这个不起作用
s = 'hello' s.object_id s = s + ' world' s.object_id
在上面的例子中,object_id对于两种情况将是不同的。
您可以使用<<
附加到一个string就地。
s = "foo" old_id = s.object_id s << "bar" s #=> "foobar" s.object_id == old_id #=> true
您还可以使用以下内容:
s.concat("world")
请问为什么这很重要?
我知道这不是对你的问题的直接回答,但是你试图保留一个string的对象ID的事实可能表明你应该再看看你正在尝试做什么。
例如,您可能会发现,依赖string的对象ID将导致很难追踪的错误。
另一种方式是:
s.insert(-1, ' world')