Menu
Coddy logo textTech

찾기와 바꾸기

Coddy Kotlin 여정의 논리와 흐름 섹션에 포함된 레슨. 63개 중 49번째.

Regex.findAll은 일치 항목을 순서대로 반환합니다. 각 일치 항목에는 value 문자열이 있습니다. 이러한 일치 항목을 반복하거나 map으로 변환한 다음 toList로 수집할 수 있습니다. Regex.replace는 모든 일치 항목을 지정된 대체 텍스트로 바꿉니다.

main 내부:

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

서로 연속된 각 숫자 그룹은 하나의 일치 항목이므로, 두 번 대체됩니다.

findAll은 일치 항목을 순서대로 방문하며, Regex.replace는 기본적으로 모든 일치 항목을 바꿉니다.

challenge icon

챌린지

중급

text: String 매개변수를 사용하여 extractNumbers를 완성하세요. 연속된 모든 ASCII 숫자 그룹을 문자열로 변환하여 왼쪽에서 오른쪽 순서로 반환하세요. 앞에 오는 0을 유지하세요. 숫자가 없으면 빈 목록을 반환하세요.

위에서 더 엄격한 범위를 지정하지 않은 경우, 각 수준의 컬렉션에는 최대 100개의 요소가 포함되며 정수 인수와 정수 컬렉션 값은 -1000에서 1000 사이입니다. 구문 분석에 제공되는 텍스트에는 설명된 대로 유효하지 않거나 범위를 벗어난 표현이 포함될 수 있습니다.

List<String> 타입의 값을 반환하세요. 제공된 입력/출력 코드를 그대로 유지하세요. 이 코드는 스칼라 인수를 한 줄에 하나씩 읽습니다. 목록은 개수와 그 뒤에 오는 요소들로 시작하며, 맵은 항목 개수와 그 뒤에 오는 각 키와 값으로 시작합니다. 중첩 목록에서는 각 행마다 개수와 요소 형식을 반복합니다. 제공된 main은 반환 값 뒤에 개행 하나를 출력합니다. 목록에는 Kotlin의 표준 대괄호 형식을 사용하며, 추가 레이블은 출력하지 마세요.

직접 해보기

fun extractNumbers(text: String): List<String> {
    // 여기에 솔루션을 작성하세요.
    return emptyList()
}
fun main() {
    val text = readLine().orEmpty()
    println(extractNumbers(text))
}
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

논리와 흐름의 모든 레슨

직접 연습해 보세요: Kotlin 플레이그라운드