无法在 UITextField 上使用 NSPredicate 对对象进行正则表达式匹配

Can't do regex matching on object using an NSPredicate on a UITextField

正在检查电子邮件正则表达式错误:

Can't do regex matching on object error

在 UITextField 的扩展中。

let emailRegEx : String = "[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}"
let emailTest = NSPredicate(format:"SELF MATCHES %@", emailRegEx)
let e = emailTest.evaluate(with: self)

self 是一个 UITextField。所以你想要 self.text! 所以谓词是 运行 针对文本字段的文本。

let e = emailTest.evaluate(with: self.text!)

是的,强制展开 UITextField 属性 的 UITextField.

是安全的