如何在Ruby中将string转换为大写或小写

如何在Ruby中将string转换为大写或小写?

Ruby有几个方法来改变string的大小写。 要转换为小写,请使用downcase

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

同样,每个字母大写都是大写, capitalize字母的首字母大写,但其余的小写字母小写:

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

如果你想修改一个string,你可以为这些方法添加一个感叹号:

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

有关更多信息,请参阅string的文档 。

通过打开irb并运行,您可以findstring上的所有可用方法:

 "MyString".methods.sort 

有关特定于string的方法列表:

 "MyString".own_methods.sort 

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

就像@endeR所提到的,如果国际化是一个问题,unicode_utils创业板是绰绰有余的。

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

Ruby 2.4中的string操作现在是unicode敏感的。

找出“ 案例 ”的方法:

 $ irb > "MyString".methods.grep(/case/) => [:casecmp, :upcase, :downcase, :swapcase, :upcase!, :downcase!, :swapcase!] 

“串” .downcase

…和大写字母是:

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

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

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

要将一个句子或一串文字转换为资本案例,是非常直接的:

 s.gsub(/\w+/) { |w| w.capitalize} 
 s.downcase # return a new String s.downcase! # modify s in place s.upcase # (and... s.upcase! # ...of course) 

链接到文档: http : //ruby-doc.org/core/String.html

另请参阅#capitalize ,它是! 形成。

简单,

 "string".downcase # to lowercase "string".upcase # to uppercase 

你可以在这里阅读ruby-doc: http : //ruby-doc.org/core-2.2.3/String.html#method-i-upcase

你可以在Ruby中使用下面给出的string方法

 my_name = "Vivek Panday"; puts my_name.capitalize; puts my_name.upcase; puts my_name.downcase; puts my_name.reverse; 

Ruby的string类提供了一些方法来改变string的大小写。

Upcase Upcase用于大写string的每个字母。

 “pawan”.upcase returns: PAWAN 

Downcase Downcase用于使string中的每个字母都小写。

 “PAWAN”.downcase returns: pawan 

大写另一种string类的方法是大写。 这种方法大写字母的第一个字母,同时缩小其余的字母。

 “pAWAN”.capitalize returns: Pawan 

Titleize标题大写string中的每个单词。 请记住,只有在Rails框架(或者仅仅是ActiveSupport创业板)中才能使用它。

 name = “pawan Yadav” name.titleize returns: Pawan Yadav 

参考http://lesseverything.com/blog/how-to-convert-a-string-to-upper-or-lower-case-in-ruby/#

你可以使用Rubystring方法

对于Upcase

Upcase用于大写string的每个字母。

 “something”.upcase 

返回:SOMETHING

对于

Downcase用于使string中的每个字母都小写。

 “SOMETHING”.downcase 

回报:某事

由于Ruby 2.4有一个完整的Unicode格式映射 。 来源: https : //stackoverflow.com/a/38016153/888294 。 有关详细信息,请参阅Ruby 2.4.0文档: https : //ruby-doc.org/core-2.4.0/String.html#method-i-downcase

此方法接受一串小写字母,并产生一个新的string,大写每个单词的第一个字母。

 def capitalize_words(string) words = string.split(" ") idx = 0 while idx < words.length word = words[idx] word[0] = word[0].upcase idx += 1 end return words.join(" ") end