gpt4 book ai didi

macos - 条件绑定(bind)中的电子邮件验证绑定(bind)值必须是可选类型

转载 作者:搜寻专家 更新时间:2023-11-01 06:23:16 25 4
gpt4 key购买 nike

我有下面的代码来检查字符串是否是有效的电子邮件。更新到 Swift 1.2 后,我现在看到错误:

Bound value in a conditional binding must be of Optional type 

在线

if let emailTest = NSPredicate(format:"SELF MATCHES %@", emailRegEx) 

我不确定应该如何消除此错误。有什么建议吗?

谢谢

 func isValidEmail(testStr:String) -> Bool {
println("validate calendar: \(testStr)")
let emailRegEx = "[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}"

if let emailTest = NSPredicate(format:"SELF MATCHES %@", emailRegEx) {
return emailTest.evaluateWithObject(testStr)
}
return false
}

println("Email is: \(isValidEmail(email))")

最佳答案

将您的功能更改为:

func isValidEmail(testStr : String) -> Bool {
println("validate calendar: \(testStr)")
let emailRegEx = "[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}"

let emailTest = NSPredicate(format:"SELF MATCHES %@", emailRegEx)

if emailTest.evaluateWithObject(testStr) {
return true
}
return false
}

或者您也可以将其更改为:

var emailTest = NSPredicate(format:"SELF MATCHES %@", emailRegEx)        
var result = emailTest.evaluateWithObject(testStr)
return result

而且也应该工作。希望对您有所帮助。

关于macos - 条件绑定(bind)中的电子邮件验证绑定(bind)值必须是可选类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29595442/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com