I am trying to create a method that finds whether a string contains a number , Upper case letter and a special character using regular expression as below
func
Here is a concise version of Joshuas answer in Swift 3, assuming that all validations must be fulfilled.
func validate(password: String) -> Bool {
let capitalLetterRegEx = ".*[A-Z]+.*"
let texttest = NSPredicate(format:"SELF MATCHES %@", capitalLetterRegEx)
guard texttest.evaluate(with: password) else { return false }
let numberRegEx = ".*[0-9]+.*"
let texttest1 = NSPredicate(format:"SELF MATCHES %@", numberRegEx)
guard texttest1.evaluate(with: password) else { return false }
let specialCharacterRegEx = ".*[!&^%$#@()/_*+-]+.*"
let texttest2 = NSPredicate(format:"SELF MATCHES %@", specialCharacterRegEx)
guard texttest2.evaluate(with: password) else { return false }
return true
}