[kotlin] 문자열에서 숫자 타입 확인하기

Kotlin에서는 주어진 문자열이 숫자인지 확인하는 여러 가지 방법이 있습니다. 주로 문자열이 정수 또는 부동 소수점 수인지 확인해야 할 때 사용됩니다.

숫자 확인 함수

Kotlin에서는 toIntOrNull, toDoubleOrNull과 같은 함수를 사용하여 문자열이 정수 또는 부동 소수점 수인지 확인할 수 있습니다.

예를 들어, 아래와 같이 사용할 수 있습니다.

val str1 = "123"
val str2 = "123.45"

val intVal: Int? = str1.toIntOrNull()
val doubleVal: Double? = str2.toDoubleOrNull()

위의 코드에서 toIntOrNulltoDoubleOrNull 함수는 문자열을 각각 정수와 부동 소수점 수로 변환합니다. 만약 변환이 실패하면 null을 반환합니다.

정규식 사용

때로는 정규식을 사용하여 문자열이 숫자로만 구성되어 있는지 확인할 수도 있습니다.

val regex = Regex("-?\\d+(\\.\\d+)?")
val str = "123.45"
val isNumber: Boolean = regex.matches(str)

위의 예시에서는 -?는 음수 부호가 0 또는 1번 나타날 수 있음을 나타내며, \\d+는 숫자가 1개 이상 나타남을 의미합니다. \\.\\d+는 소수점 이하 숫자를 나타냅니다.

정리

Kotlin에서는 toIntOrNull, toDoubleOrNull 함수와 정규식을 사용하여 문자열이 숫자인지 간단히 확인할 수 있습니다. 이를 통해 안전하게 문자열을 숫자 타입으로 변환하거나 유효성을 검사할 수 있습니다.

더 자세한 정보는 Kotlin 공식 문서를 참고할 수 있습니다.