ios - 如何快速验证国际护照号码
问题描述
我是 swift 新手,我需要验证国际护照。有什么方法可以验证它。
解决方案
尝试使用NSPredicate:
func isValidPassport(passportStr:String) -> Bool {
let passportRegEx = "^(?!^0+$)[a-zA-Z0-9]{3,20}$"
let passportPred = NSPredicate(format:"SELF MATCHES %@", passportRegEx)
return passportPred.evaluate(with: passportStr)
}
Swift 3.0 之前的版本:
func isValidPassport(passportStr:String) -> Bool {
let passportRegEx = "^(?!^0+$)[a-zA-Z0-9]{3,20}$"
let passportPred = NSPredicate(format:"SELF MATCHES %@", passportRegEx)
return passportPred.evaluate(with: passportStr)
}
早于 1.2 的 Swift:
class func isValidPassport(passportStr:String) -> Bool {
let passportRegEx = "^(?!^0+$)[a-zA-Z0-9]{3,20}$"
if let passportPred = NSPredicate(format:"SELF MATCHES %@", passportRegEx) {
return passportPred.evaluateWithObject(passportStr)
}
return false
}
推荐阅读
- c++ - 为什么在 C++ 标准中没有 std::string_view 类型的参数的 std::basic_string 类的构造函数
- excel - 如何计算出现次数
- amazon-web-services - admin-create-user 命令无法正常工作
- javascript - 在数组中查找一个项目并获取剩下的内容
- postgresql - 如何在 Postgres 中选择和计算一列?
- c# - CaliburnMicro IsVisibleChanged 不会触发
- excel - 转置选项 - 多列到单个单元格,每个值之间有一个分号
- gradle - 无版本的 Gradle 依赖
- r - 如何在 lubridate 包的周和月函数的输出中修改/添加年份?
- javascript - 互联网连接中断时图像消失