Menu
Coddy logo textTech

Buscar y reemplazar

Parte de la sección Lógica y flujo del Journey de Kotlin de Coddy. Lección 49 de 63.

Regex.findAll devuelve las coincidencias en orden. Cada coincidencia tiene una cadena value. Puedes iterar sobre estas coincidencias o transformarlas con map y recopilarlas con toList. Regex.replace reemplaza cada coincidencia con el texto de reemplazo especificado.

Dentro de main:

val digits = Regex("[0-9]+")
println(digits.replace("Box12Shelf7", "#"))

Cada grupo consecutivo de dígitos es una coincidencia, por lo que hay dos reemplazos.

findAll visita las coincidencias en orden; Regex.replace reemplaza todas las coincidencias de forma predeterminada.

challenge icon

Desafío

Intermedio

Completa extractNumbers con el parámetro text: String. Devuelve cada grupo consecutivo de dígitos ASCII como una cadena, en orden de izquierda a derecha. Conserva los ceros iniciales. Devuelve una lista vacía cuando no haya dígitos.

A menos que se indiquen límites más estrictos arriba, las colecciones contienen como máximo 100 elementos en cada nivel, y los argumentos enteros y los valores enteros de las colecciones están entre -1000 y 1000. El texto proporcionado para el análisis puede incluir representaciones no válidas o fuera de rango, según se describe.

Devuelve un valor de tipo List<String>. Conserva el código de entrada/salida proporcionado. Lee los argumentos escalares, uno por línea; una lista comienza con su cantidad, seguida de sus elementos, y un mapa comienza con la cantidad de sus entradas, seguida de cada clave y valor. Las listas anidadas repiten el formato de cantidad y elementos para cada fila. El main proporcionado imprime el valor devuelto seguido de un salto de línea. Las listas utilizan el formato estándar entre corchetes de Kotlin; no imprimas etiquetas adicionales.

Pruébalo tú mismo

fun extractNumbers(text: String): List<String> {
    // Escribe tu solución aquí.
    return emptyList()
}
fun main() {
    val text = readLine().orEmpty()
    println(extractNumbers(text))
}
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Lógica y flujo

Practica por tu cuenta: Playground de Kotlin