AD

¿Ya dominas lo básico? Un curso estructurado de Swift es la vía rápida para dar el salto.

Ver cursos de Swift en Udemy

Enlace de afiliado. No te cuesta nada extra.

🐦Lecciones de Swift
Lección 39 / 68

Normalizar cadenas (trimmingCharacters, unificar mayúsculas)

En esta lección dejarás textos en una forma común antes de compararlos.

trimmingCharacters(in: .whitespaces) quita los espacios de los extremos y lowercased() pasa todo a minúsculas. Hace falta importar Foundation.

El código de ejemplo comprueba que dos escrituras distintas del mismo texto se consideran iguales.

Con el español hay un caso que lowercased() no resuelve: los acentos. «Cancion» y «canción» siguen siendo distintas, y para un buscador probablemente deberían coincidir. En Swift eso se hace con folding(options: .diacriticInsensitive, locale: ...). Y conviene recordar que la eñe no es una ene con tilde, sino una letra propia: eliminarla sería un error.

Swift compara cadenas por equivalencia Unicode, no byte a byte, así que dos formas distintas de codificar la misma letra acentuada ya se consideran iguales. Es un problema menos que en otros lenguajes.

La regla práctica es normalizar al entrar el dato, no en cada comparación posterior. Correos con mayúsculas, nombres con espacios de más al copiar y pegar, códigos con guiones opcionales: todo eso se limpia una vez.

📖 Código de referencia
✍️ Tu código
Escribe tu código y pulsa «Ejecutar»

🧪 Este sitio no puede compilar ni ejecutar Swift directamente, así que comprueba al instante si lo que escribiste coincide con el código de referencia (la corrección ocurre por completo en tu navegador; no se envía nada a ningún servidor).

🔗 El mismo tema en otros lenguajes

Mira cómo se escribe lo mismo en otro lenguaje.

Espacio publicitario (banner)
Espacio publicitario (en el artículo)