【问题标题】:how to use validation on textfield with below code (in swift)如何使用以下代码在文本字段上使用验证(快速)
【发布时间】:2015-07-05 19:09:45
【问题描述】:
 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)
    return emailTest.evaluateWithObject(testStr)
}

有人知道如何在 Swift 中验证电子邮件地址吗?我找到了这段代码:

【问题讨论】:

  • 此代码有效。例如像这样使用它:let emailIsValid = isValidEmail("me@fake.com") 现在emailIsValid 包含true
  • 例如我创建了一个 txtEmail 作为文本字段如何连接上面的代码
  • 从您的文本字段中获取字符串并将其传递给函数。 NSTextField 示例:let emailIsValid = isValidEmail(myTextField.stringValue)
  • 感谢 ericd 的更正

标签: validation swift email


【解决方案1】:

假设 txtEmail 是你的 UITextField:

var isValid = isValidEmail(txtEmail.text)
if isValid {
  // Do some things when email is valid
}
else {
  // Show error to user
}

【讨论】:

  • @horizo​​n 代码将在您需要检查验证的任何地方。如果您正在注册或登录,那将是当用户单击按钮登录或注册时。这有意义吗?
  • func isValidEmail(testStr:String) -> Bool { // println("验证日历: (testStr)") let emailRegEx = "[A-Z0-9a-z._%+-] +@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}" let emailTest = NSPredicate(format:"SELF MATCHES %@", emailRegEx) var isValid = isValidEmail (emailTxt.text) if isValid { // 当电子邮件有效时做一些事情 println("true") } else { println("wrong") } return emailTest.evaluateWithObject(testStr) } 我在 viewDidLoad 和我的文本字段名称是 emailTxt 但代码没有运行
  • 你不能在 viewDidLoad 方法中做这个逻辑。它需要在用户完成按下按钮等操作时发生。
  • 你是对的我添加到代码登录按钮。你能为我发送所有代码
  • @horizo​​n 我认为您不了解 Stackoverflow 上的工作原理。人们是来帮忙的,而不是为你编写程序。对不起
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-11-09
  • 1970-01-01
  • 1970-01-01
  • 2018-02-14
  • 1970-01-01
  • 1970-01-01
  • 2016-04-30
相关资源
最近更新 更多