有没有一种简单的方法将字符串的第一个字母转换为小写?String#capitalize修改整个字符串.当然,我可以删除第一个字母,将其缩写,然后将其添加到开头.但它似乎有点傻,有更简单的方法吗?
注意:我将只处理英文单词.
编辑:str[0] = str[0].downcase在JRuby 1.6中不起作用:(
编辑2:最后我决定这个:
word = "ABC"
first_capital_letter = word.match(/^([A-Z])/).to_s
if(first_capital_letter)
word = word.sub(first_capital_letter, first_capital_letter.downcase)
puts word
end
Run Code Online (Sandbox Code Playgroud)
irb(main):001:0> str = "ABC"
=> "ABC"
irb(main):002:0> str[0] = str[0].downcase
=> "a"
irb(main):003:0> str
=> "aBC"
Run Code Online (Sandbox Code Playgroud)
试试这个:
str[0] = str[0].chr.downcase
Run Code Online (Sandbox Code Playgroud)
红宝石1.8.7的回报integer,而不是string为str[0]:
str = "ABC"
print str[0] # 65
print str[0..0] # a
print str[0].chr # a
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3368 次 |
| 最近记录: |