-2

如何在 Ruby 中仅将字符串中的最后 4 个字符设为大写?

4

3 回答 3

2
s = 'string'
"#{s[0..-5]}#{s[-4..-1].upcase}" # => stRING

为了防止少于 4 个字符的字符串出错,您可以这样做:

s = 'foo'
s.length > 4 ? "#{s[0..-5]}#{s[-4..-1].upcase}" : s.upcase # => FOO

查看Ruby API以获得解释。

于 2013-02-15T05:18:35.783 回答
1
str = "let's upcase last 4 letters"
length = str.length
str = str[0..(length-5)] + str[(length-4)..length].upcase
# let's upcase last 4 letTERS
于 2013-02-15T05:05:13.860 回答
0

更新

s = "string"
s.size > 3 ? s[0..-5]+s[-4..-1].upcase : s.upcase # "stRING"
于 2013-02-15T05:19:43.717 回答