Split y Replace
En esta página
.split(sep) divide la string por el separador y devuelve un array de strings.
El separador puede tener más de un carácter. Un delimitador duplicado genera una
string vacía entre ellos — la longitud del array lo refleja.
.replace(old, new) sustituye todas las ocurrencias de old por new y
devuelve una nueva string; la original permanece intacta. Pasar "" como new
es la forma idiomática de eliminar caracteres.
División por separador simple y multicarácter; sustitución y eliminación de fragmentos.
07-split-and-replace.zolo
// 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
Desafío
Dada la string "2026-05-30", usa .split("-") para extraer el año, mes y día
en variables separadas e imprime "Día: 30, Mes: 05, Año: 2026".
Consulta también