Swift Academy · Lección

Reemplazar y dividir texto

Transforme cadenas mediante operaciones de expresiones regulares.

Lección 4 de 413 pasos

Reemplazar y dividir texto es una lección gratuita de Swift Academy en CoddyKit. Esta es la lección 4 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Swift Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Swift Academy incluye 4 lecciones en total.

Reemplazar y dividir

Las regex no solo sirven para buscar coincidencias. Las cadenas de Swift pueden reemplazar el texto coincidente y dividirse según un patrón, transformando cadenas sin bucles manuales.

replacing(_:with:)

replacing(_:with:) devuelve una cadena nueva en la que cada coincidencia del patrón se sustituye por el texto de reemplazo.

let s = "a1b2c3"
let cleaned = s.replacing(/\d/, with: "*")
print(cleaned)

Reemplazar palabras completas

El patrón puede ser cualquier regex, por lo que puede reemplazar de una vez todas las secuencias de dígitos con un único reemplazo.

let s = "order 1234 done"
let masked = s.replacing(/\d+/, with: "#")
print(masked)

Modificar con replace

replace(_:with:) modifica una cadena var directamente en lugar de devolver una copia.

var text = "hello world"
text.replace(/o/, with: "0")
print(text)

Reemplazar con un closure

La variante de replacing(_:with:) que utiliza un closure recibe cada coincidencia y devuelve el reemplazo, lo que permite realizar sustituciones calculadas.

let s = "a1 b2 c3"
let result = s.replacing(/\d+/) { match in
    String((Int(match.0) ?? 0) * 10)
}
print(result)

Usar capturas en el reemplazo

Dentro del closure puede leer los grupos de captura de la coincidencia para construir el texto de reemplazo.

let s = "2024-05"
let out = s.replacing(/(\d+)-(\d+)/) { m in
    "\(m.2)/\(m.1)"
}
print(out)

split(separator:)

Las cadenas admiten split(separator:) con una regex, lo que divide la cadena allí donde coincide el patrón.

let csv = "a,b;c,d"
let parts = csv.split(separator: /[,;]/)
print(parts)

Dividir en espacios en blanco

Una tarea habitual: dividir una cadena en palabras en cada secuencia de espacios en blanco mediante /\s+/.

let line = "the   quick  brown"
let words = line.split(separator: /\s+/)
print(words.count)
print(words)

Limitar las divisiones

El parámetro maxSplits limita la cantidad de divisiones que se realizan y conserva intacto el resto.

let s = "a-b-c-d"
let parts = s.split(separator: /-/, maxSplits: 1)
print(parts)

Recortar y reemplazar

Combine operaciones: reemplace primero los patrones no deseados y divida después para limpiar y tokenizar la entrada en una secuencia de operaciones.

let raw = "  one,, two ,,three "
let cleaned = raw.replacing(/,+/, with: ",")
let items = cleaned.split(separator: ",").map { $0.trimmingCharacters(in: .whitespaces) }
print(items)

replacing frente a replacingOccurrences

El replacing de regex funciona con patrones; el antiguo replacingOccurrences(of:with:) solo gestiona subcadenas literales. Prefiera la variante de regex para las modificaciones basadas en patrones.

let s = "cat hat bat"
print(s.replacing(/[ch]at/, with: "X"))

Comprobación rápida

¿Qué produce "a1b2".replacing(/\d/, with: "-")?

Resumen

Puede reemplazar coincidencias con replacing(_:with:) (en su variante de cadena o de closure) y con replace para modificar en el mismo lugar, y puede dividir cadenas según una regex mediante split(separator:) junto con maxSplits. Estas herramientas convierten las regex en un conjunto completo de utilidades para transformar texto.

Gratis para empezar

Aprende Swift con un tutor de IA — gratis

Escribe y ejecuta código real en tu navegador, obtén ayuda instantánea de un tutor de IA disponible 24/7 y continúa donde lo dejaste en la web o en la aplicación.

Cursos
122
Lecciones
409

Preguntas frecuentes

¿La lección «Reemplazar y dividir texto» es gratis?

Sí — el texto completo de «Reemplazar y dividir texto» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Swift Academy, actualiza a CoddyKit PRO. El curso de Swift Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Reemplazar y dividir texto»?

Transforme cadenas mediante operaciones de expresiones regulares. Practicas Swift Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Swift Academy?

No se requiere experiencia previa. Swift Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 4 de 4.

¿Cuánto tiempo toma la lección «Reemplazar y dividir texto»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Swift Academy?

Sí. Cada lección de Swift Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Literales regex y coincidencias
  2. Grupos de captura
  3. DSL RegexBuilder
  4. Reemplazar y dividir texto
← Volver a Swift Academy