如何在Ruby中将字符串转换为较低或大写字母




string uppercase (5)

...和大写字母是:

"Awesome String".upcase
=> "AWESOME STRING"

如何在Ruby中将字符串转换为小写或大写?


Rails Active Support upcase提供国际化支持的upcasedowncaseswapcasecapitalize等方法:

gem install activesupport
irb -ractive_support/core_ext/string
"STRING  ÁÂÃÀÇÉÊÍÓÔÕÚ".mb_chars.downcase.to_s
 => "string  áâãàçéêíóôõú"
"string  áâãàçéêíóôõú".mb_chars.upcase.to_s
=> "STRING  ÁÂÃÀÇÉÊÍÓÔÕÚ"

Ruby有几种改变字符串大小写的方法。 要转换为小写,请使用小写字母:

"hello James!".downcase    #=> "hello james!"

类似地, upcase每一个字母大写,并capitalize字母的第一个字母,但将其余的字母upcase

"hello James!".upcase      #=> "HELLO JAMES!"
"hello James!".capitalize  #=> "Hello james!"
"hello James!".titleize    #=> "Hello James!"

如果你想修改一个字符串,你可以在这些方法中添加一个感叹号:

string = "hello James!"
string.downcase!
string   #=> "hello james!"

有关更多信息,请参阅字符串文档


像@endeR提到的,如果国际化是一个问题,unicode_utils gem就足够了。

$ gem install unicode_utils
$ irb
> require 'unicode_utils'
=> true
> UnicodeUtils.downcase("FEN BİLİMLERİ", :tr)
=> "fen bilimleri"

Ruby 2.4中的字符串操作现在是unicode敏感的。


通过打开irb并运行,您可以找到字符串上的所有可用方法:

"MyString".methods.sort

有关特定字符串的可用方法列表:

"MyString".own_methods.sort

我用这个来找出关于我可能不知道存在的对象的新的和有趣的东西。





lowercase