fun containsForbidden(text: String, forbidden: Set<String>): Boolean {
val words = Regex("[a-z0-9]+")
.findAll(text.lowercase())
.map { it.value }
.toSet()
return words.intersect(forbidden).isNotEmpty()
}
fun main() {
val text = "This text contains a badword inside"
val forbidden = setOf("badword", "evil", "kill", "nasty", "terrible")
println(
if (containsForbidden(text, forbidden)) "Forbidden word detected"
else "No forbidden words found"
)
}
/*
run:
Forbidden word detected
*/