Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Buy a domain name - Register cheap domain names from $0.99 - Namecheap

Scalable Hosting That Grows With You

Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Semrush - keyword research tool

Boost your online presence with premium web hosting and servers

Disclosure: My content contains affiliate links.

40,003 questions

51,950 answers

573 users

How to check whether a user string contains any forbidden words from a list in Swift

2 Answers

0 votes
import Foundation

let forbidden = ["badword", "evil", "kill", "nasty", "terrible"]
let text = "This text contains a badword inside"

let lower = text.lowercased()

if forbidden.contains(where: { lower.contains($0) }) {
    print("Forbidden word detected")
} else {
    print("No forbidden words found")
}



/*
run:

Forbidden word detected

*/

 



answered Dec 27, 2025 by avibootz
0 votes
import Foundation

func containsForbidden(_ text: String, forbidden: Set<String>) -> Bool {
    let regex = try! NSRegularExpression(pattern: "[a-z0-9]+")
    let range = NSRange(text.startIndex..., in: text.lowercased())

    let words = regex.matches(in: text.lowercased(), range: range)
        .compactMap { Range($0.range, in: text.lowercased()) }
        .map { String(text.lowercased()[$0]) }

    return !forbidden.isDisjoint(with: words)
}

let text = "This text contains a badword inside"
let forbidden: Set<String> = ["badword", "evil", "kill", "nasty", "terrible"]

print(containsForbidden(text, forbidden: forbidden)
      ? "Forbidden word detected"
      : "No forbidden words found")



/*
run:

Forbidden word detected

*/

 



answered Dec 27, 2025 by avibootz

Related questions

...