Я пытаюсь создать метод, который обнаруживает, содержит ли строка число, букву верхнего регистра и специальный символ, используя регулярное выражение, как показано ниже
func checkTextSufficientComplexity(var text : String) -> Bool{
let capitalLetterRegEx = "[A-Z]+"
var texttest = NSPredicate(format:"SELF MATCHES %@", capitalLetterRegEx)
var capitalresult = texttest.evaluateWithObject("AniP")
println("\(capitalresult)")
let numberRegEx = "[0-9]+"
var texttest1 = NSPredicate(format:"SELF MATCHES %@", numberRegEx)
var numberresult = texttest1.evaluateWithObject(text)
println("\(numberresult)")
let specialCharacterRegEx = "[.*&^%$#@()/]+"
var texttest2 = NSPredicate(format:"SELF MATCHES %@", numberRegEx)
var specialresult = texttest2.evaluateWithObject(text)
println("\(specialresult)")
return capitalresult && numberresult && specialresult
}
Проблема заключается в следующем регулярном выражении [A-Z] + возвращает true только для AVATAR и возвращает false для Avatar. Я хочу, чтобы мое регулярное выражение возвращало true, если оно содержит хотя бы одну UpperCase в String.