Ruby – Como converter uma String em Letras Minúsculas ou Maiúsculas?

Em Ruby, uma String contém e manipula uma sequencia arbitrária de bytes, tipicamente representando caracteres. Quando se deseja modificar o conteúdo de uma String em Ruby, deve-se observar que métodos com nome terminado em acento de exclamação, “!”, modificam a String que está recebendo este método, enquanto os que não possuem o acento “!” retornam uma nova String.

Métodos para alterar capitalização do conteúdo de uma String no Ruby

Para converter o conteúdo da String para letras minúsculas, use .downcase:

"hello James!".downcase   
"hello james!"

De forma semelhante, para todas serem transformadas para maiúsculas, use .upcase:

"hello James!".upcase     
"HELLO JAMES!"

Caso deseje capitalizar somente a primeira letra de uma String, use o método .capitalize:

"hello James!".capitalize 
"Hello james!"

Também é possível utilizar .titleize para fazer com que a primeira letra de cada palavra dentro da String fique maiúscula:

"hello james".titleize
"Hello James"

Lembrando que se você adicionar o acento de exclamação “!” em qualquer um desses métodos, a String original será modificada, conforme demonstrado no exemplo abaixo:

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

Incluindo suporte à Unicode, além de ASCII nos métodos de manipulação de capitalização no Ruby

Estes métodos nativamente funcionam em ASCII. Para adicionar o suporte à Unicode, é necessário instalar uma gem no Ruby, como exemplo abaixo:

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

Você sabe outras formas de fazer este tipo de alteração numa String no Ruby? Compartilhe seus comentários na seção abaixo!

Caso deseje explorar outras questões, pode conferir nossos vídeos sobre Ruby. Abaixo estão alguns exemplos:

Você também pode se inscrever em alguns canais que fazem broadcast em Ruby, como os a seguir:

j-mcnally

 

 

josephwilk

 

 

Outra maneira legal de descobrir mais coisas interessantes sobre Ruby é acessar nossa página de projetos!

Dr. Michael J. Garbade

I, Dr. Michael J. Garbade is the co-founder of the Education Ecosystem (aka LiveEdu), ex-Amazon, GE, Rebate Networks, Y-combinator. Python, Django, and DevOps Engineer. Serial Entrepreneur. Experienced in raising venture funding. I speak English and German as mother tongues. I have a Masters in Business Administration and Physics, and a Ph.D. in Venture Capital Financing. Currently, I am the Project Lead on the community project -Nationalcoronalvirus Hotline I write subject matter expert technical and business articles in leading blogs like Opensource.com, Dzone.com, Cybrary, Businessinsider, Entrepreneur.com, TechinAsia, Coindesk, and Cointelegraph. I am a frequent speaker and panelist at tech and blockchain conferences around the globe. I serve as a start-up mentor at Axel Springer Accelerator, NY Edtech Accelerator, Seedstars, and Learnlaunch Accelerator. I love hackathons and often serve as a technical judge on hackathon panels.

View Comments

Recent Posts

Highest Stable Coin Yields – (W16 – 2024)

Another week to bring you the top yield platforms for three of the most prominent…

2 weeks ago

LEDU Token OTC Trading

If you hold a large volume of LEDU tokens above 1 million units and wish…

1 month ago

Highest Stable Coin Yields – (W12 – 2024)

It’s another week and like always we have to explore the top yield platforms for…

1 month ago

Binance Auto Invest – the Best Innovation in Crypto since Sliced Bread

At a time where we’re constantly seeking tools and strategies to simplify our crypto investments,…

1 month ago

Highest Stable Coin Yields – March 2024

As we kick off another week, it's time to explore the top yield platforms for…

2 months ago

Education Ecosystem Featured on Business Insider

We're excited to share that Education Ecosystem was recently featured in an article on Business…

2 months ago