freeCodeCamp/guide/portuguese/ruby/ruby-string-methods/index.md

154 lines
5.0 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters!

This file contains invisible Unicode characters that may be processed differently from what appears below. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to reveal hidden characters.

---
title: Ruby String Methods
localeTitle: Métodos de String Ruby
---
## Métodos de String Ruby
Ruby tem muitos métodos integrados para trabalhar com strings. Strings em Ruby por padrão são mutáveis e podem ser alteradas no local ou uma nova string pode ser retornada de um método.
### Comprimento:
* A propriedade `.length` retorna o número de caracteres em uma cadeia, incluindo o espaço em branco. `ruby "Hello".length #=> 5 "Hello World!".length #=> 12`
### Esvaziar:
* O `.empty?` método retorna `true` se uma string tiver comprimento igual a zero. `ruby "Hello".empty? #=> false "!".empty? #=> false " ".empty? #=> false "".empty? #=> true`
### Contagem:
* O método `.count` conta quantas vezes um caractere específico é encontrado em uma string.
* Este método faz distinção entre maiúsculas e minúsculas. `ruby "HELLO".count('L') #=> 2 "HELLO WORLD!".count('LO') #=> 1`
### Inserir:
* O método `.insert` insere uma string em outra string antes de um determinado índice. `ruby "Hello".insert(3, "hi5") #=> Helhi5lo # "hi5" is inserted into the string right before the second 'l' which is at index 3`
### Upcase:
* O método `.upcase` transforma todas as letras em uma string para maiúsculas. `ruby "Hello".upcase #=> HELLO`
### Downcase:
* O método `.downcase` transforma todas as letras em uma string em minúsculas. `ruby "Hello".downcase #=> hello`
### Swapcase
* O método `.swapcase` transforma os `.swapcase` maiúsculas em uma string em minúsculas e as letras minúsculas em maiúsculas. `ruby "hELLO wORLD".swapcase #=> Hello World`
### Capitalizar:
* O método `.capitalize` transforma a primeira letra em uma string em maiúsculas e o restante na string em minúsculo. `ruby "HELLO".capitalize #=> Hello "HELLO, HOW ARE YOU?".capitalize #=> Hello, how are you?`
_Observe que a primeira letra só é maiúscula se estiver no início da string._ `ruby "-HELLO".capitalize #=> -hello "1HELLO".capitalize #=> 1hello`
### Marcha ré:
* O método `.reverse` inverte a ordem dos caracteres em uma string. `ruby "Hello World!".reverse #=> "!dlroW olleH"`
### Dividido:
* O `.split` pega uma string, _divide_ -a em uma matriz e retorna a matriz.
```ruby
"Hello, how are you?".split #=> ["Hello,", "how", "are", "you?"]
```
* O método padrão divide a string com base no espaço em branco, a menos que um separador diferente seja fornecido (veja o segundo exemplo). `ruby "Hello".split('-') #=> ["H", "e", "l", "l", "o"]`
### Chop:
* O método `.chop` remove o último caractere da string.
* Uma nova string é retornada, a menos que você use o `.chop!` método que muta a string original.
```ruby
"Name".chop #=> Nam
```
```ruby
name = "Batman"
name.chop
name == "Batma" #=> false
```
```ruby
name = "Batman"
name.chop!
name == "Batma" #=> true
```
### Faixa:
* O método `.strip` remove os espaços em branco inicial e final em cadeias, incluindo tabulações, novas linhas e retornos de carro ( `\t` , `\n` , `\r` ). `ruby " Hello ".strip #=> Hello`
### Chomp:
* O método `.chomp` remove o último caractere em uma string, somente se for um retorno de carro ou uma nova linha ( `\r` , `\n` ).
* Esse método é comumente usado com o comando `gets` para remover retornos da entrada do usuário. ``ruby "hello\r".chomp #=> hello "hello\t".chomp #=> hello\t # because tabs and other whitespace remain intact when using `chomp` ``
### Para inteiro:
* O método `.to_i` converte uma string em um inteiro. `ruby "15".to_i #=> 15 # integer`
### Gsub:
* `gsub` substitui todas as referências do primeiro parâmetro do segundo parâmetro em uma string.
```ruby
"ruby is cool".gsub("cool", "very cool") #=> "ruby is very cool"
```
* `gsub` também aceita padrões (como _regexp_ ) como primeiro parâmetro, permitindo coisas como:
```ruby
"ruby is cool".gsub(/[aeiou]/, "*") #=> "r*by *sc**l"
```
### Concatenação:
* Ruby implementa alguns métodos para concatenar duas strings juntas:
* O método `+` :
```ruby
"15" + "15" #=> "1515" # string
```
* O `<<` método:
```ruby
"15" << "15" #=> "1515" # string
```
* O método `concat` : `ruby "15".concat "15" #=> "1515" # string`
### Índice:
* O método de `index` retorna a posição de índice da primeira ocorrência da correspondência de padrão de substring ou de expressão regular em uma string.
* Se não houver correspondência encontrada, `nil` será retornado.
* Um segundo parâmetro opcional indica qual posição do índice na string para começar a procurar por uma correspondência.
```ruby
"information".index('o') #=> 3
"information".index('mat') #=> 5
"information".index(/[abc]/) #=> 6
"information".index('o', 5) #=> 9
"information".index('z') #=> nil
```
### Claro:
* Remove o conteúdo da string. `ruby a = "abcde" a.clear #=> ""`