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 32 / 68

Introducción a las expresiones regulares

En esta lección buscarás un patrón dentro de un texto en lugar de un texto exacto.

range(of:options:.regularExpression) busca el patrón y devuelve el rango encontrado, o nil si no hay ninguno. Por eso el resultado se recoge con if let. Hay que importar Foundation.

El código de ejemplo extrae un número de teléfono de una frase y comprueba si un texto está formado solo por dígitos.

Ojo con las barras invertidas: el patrón se escribe dentro de una cadena, así que \d hay que escribirlo \\d. Una barra de menos y el patrón busca la letra d literal. Es el error más frecuente al escribir expresiones regulares en Swift.

El número del ejemplo usa el formato español de nueve cifras en tres grupos. Si cambias el número, cambia también el patrón: si dejan de coincidir, range(of:) devuelve nil, el if let no entra y la primera línea de la salida desaparece sin ningún error. Ese fallo silencioso es más traicionero que uno que detenga el programa.

Swift 5.7 introdujo además una sintaxis propia con Regex y un constructor declarativo que el compilador verifica. Para código nuevo es mejor opción, aunque las expresiones al estilo clásico siguen siendo lo que se encuentra en la mayoría de proyectos.

📖 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)