Pular para o conteúdo

Split e Replace

Nesta página

.split(sep) divide a string pelo separador e devolve um array de strings. O separador pode ter mais de um caractere. Um delimitador duplicado gera uma string vazia entre eles — o comprimento do array reflete isso.

.replace(old, new) substitui todas as ocorrências de old por new e devolve uma nova string; a original permanece intacta. Passar "" como new é a forma idiomática de remover caracteres.

Divisão por separador simples e multi-caractere; substituição e remoção de trechos.

07-split-and-replace.zolo
Playground
// Feature: Splitting and replacing

// Syntax: `s.split(sep)` -> [str], `s.replace(old, new)` -> str

// When to use: simple CSV parsing, sanitization, transformations.


use std::csv
use std::log

// -- split: divides the string by a separator -------------------

let csv = "alice,bob,carol"
let names = csv.split(",")
print(names.len())  // 3

print(names[0])  // alice

print(names[1])  // bob

print(names[2])  // carol


// Iterate parts.

for n in csv.split(",") {
  print("- {n}")
}

// expected:

// - alice

// - bob

// - carol


// Separator longer than 1 character.

let log = "INFO::ready::server::up"
let pieces = log.split("::")
print(pieces.len())  // 4

print(pieces[0])  // INFO


// Empty string between delimiters becomes an empty piece.

let chunk = "a,,c"
print(chunk.split(",").len())  // 3


// -- replace: substitutes all occurrences ----------------------

let s = "hello world"
print(s.replace("o", "0"))  // hell0 w0rld

print(s.replace("world", "Zolo"))  // hello Zolo


// Original is unchanged.

print(s)  // hello world


// Chain: normalize spacing.

let raw = "a   b   c"
let clean = raw.replace("   ", " ")
print(clean)

// expected: a b c


// Replace a character with nothing — equivalent to removing.

print("a-b-c".replace("-", ""))
// expected: abc

Desafio

Dada a string "2026-05-30", use .split("-") para extrair o ano, mês e dia em variáveis separadas e imprima "Dia: 30, Mês: 05, Ano: 2026".

Buscar no Zolo

9 resultados

enespt-br