【问题标题】:mobile number validation best way to support voip, extension or mobile number ( domestic +international numbers)手机号码验证支持 voip、分机或手机号码(国内+国际号码)的最佳方式
【发布时间】:2020-01-24 14:45:00
【问题描述】:

尝试以下代码实现手机号码验证,支持voip、分机或手机号码(国内+国际号码)。

func validate(value: String) -> Bool {
    let PHONE_REGEX = "[0123456789][0-9]{9}"
    let phoneTest = NSPredicate(format: "SELF MATCHES %@", PHONE_REGEX)
    let result =  phoneTest.evaluate(with: value)
    return result
}

但它不适用于 (+21) 54683920 之类的数字。

请帮忙。

【问题讨论】:

  • 白眼,正则表达式不适合此示例,您应该使用 PhoneNumberKit,这将对您有所帮助

标签: ios swift nspredicate nsregularexpression


【解决方案1】:

我建议使用PhoneNumberKit

repo 中的使用示例:

do {
    let phoneNumber = try phoneNumberKit.parse("+33 6 89 017383")
}
catch {
    print("Generic parser error")
}

【讨论】:

    猜你喜欢
    • 2020-07-29
    • 1970-01-01
    • 2016-10-12
    • 2013-12-01
    • 2021-11-23
    • 2015-08-01
    • 1970-01-01
    • 2019-06-22
    • 1970-01-01
    相关资源
    最近更新 更多