37/100 Dias de Golang - Strings
Table of Contents
#
Strings
Vamos ver como funciona a biblioteca padrão do golang para manipulação de strings
. Esse pacote oferece funções para busca, substituição, divisão, transformação e muito mais. Obviamente que o nome do pacote é strings
.
Para saber se uma string contém outra, use strings.Contains
:
s := "victorstein.dev"
if strings.Contains(s, "victor") {
fmt.Println("Achou!")
}
Fazer o replace de um substring
s := "victorstein.dev"
nova := strings.ReplaceAll(s, ".dev", ".com")
fmt.Println(nova) // victorstein.com
Dividir strings
partes := strings.Split("a,b,c", ",")
fmt.Println(partes) // [a b c]
Juntar
junta := strings.Join([]string{"Victor", "Stein", }, " ")
fmt.Println(junta) // Victor Stein
Alterar toda a string para maíusculo ou minúsculo
fmt.Println(strings.ToUpper("golang")) // GOLANG
fmt.Println(strings.ToLower("GoLang")) // golang
Remover espaços no fim e no início
fmt.Println(strings.TrimSpace(" Victor ")) // "Victor"
O strings.Map
permite aplicar uma função a cada caractere da string
import (
"fmt"
"strings"
)
func removerVogais(r rune) rune {
switch r {
case 'a', 'e', 'i', 'o', 'u', 'A', 'E', 'I', 'O', 'U':
return -1 // Remove o caractere
}
return r
}
func main() {
s := "Victor Stein"
fmt.Println(strings.Map(removerVogais, s)) // Vctr Stn
}
Contar quantas vezes uma substring aparece em uma string.
fmt.Println(strings.Count("victorstein.dev", "v")) // 2