fun countCharacters(text: String): Quad {
val uppercase = Regex("[A-Z]").findAll(text).count()
val lowercase = Regex("[a-z]").findAll(text).count()
val digits = Regex("\\d").findAll(text).count()
val special = Regex("[^A-Za-z0-9]").findAll(text).count()
return Quad(uppercase, lowercase, digits, special)
}
data class Quad(
val uppercase: Int,
val lowercase: Int,
val digits: Int,
val special: Int
)
fun main() {
val s = "Programming&AI@2026!"
val (u, l, d, spc) = countCharacters(s)
println("Uppercase: $u")
println("Lowercase: $l")
println("Digits: $d")
println("Special characters: $spc")
}
/*
run:
Uppercase: 3
Lowercase: 10
Digits: 4
Special characters: 3
*/