Swift:邮箱网址手机号码等正则判断
发布时间:2020-12-14 02:33:42 所属栏目:百科 来源:网络整理
导读:importFoundation enum Validate{ case email(_:String) case phoneNum(_:String) case carNum(_:String) case username(_:String) case password(_:String) case nickname(_:String) case URL(_:String) case IP(_:String) varisRight:Bool{ varpredicateSt
importFoundation
enum
Validate{
case
email(_:String)
case
phoneNum(_:String)
case
carNum(_:String)
case
username(_:String)
case
password(_:String)
case
nickname(_:String)
case
URL(_:String)
case
IP(_:String)
varisRight:Bool{
varpredicateStr:String!
varcurrObject:String!
switch
self{
case
let.email(str):
predicateStr=
"^([a-z0-9_.-]+)@([da-z.-]+).([a-z.]{2,6})$"
currObject=str
case
let.phoneNum(str):
predicateStr=
"^((13[0-9])|(15[^4,D])|(17[0,0-9])|(18[0,0-9]))d{8}$"
currObject=str
case
let.carNum(str):
predicateStr=
"^[A-Za-z]{1}[A-Za-z_0-9]{5}$"
currObject=str
case
let.username(str):
predicateStr=
"^[A-Za-z0-9]{6,20}+$"
currObject=str
case
let.password(str):
predicateStr=
"^[a-zA-Z0-9]{6,20}+$"
currObject=str
case
let.nickname(str):
predicateStr=
"^[u4e00-u9fa5]{4,8}$"
currObject=str
case
let.URL(str):
predicateStr=
"^(https?://)?([da-z.-]+).([a-z.]{2,6})([/w.-]*)*/?$"
currObject=str
case
let.IP(str):
predicateStr=
"^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$"
currObject=str
}
letpredicate=NSPredicate(format:
"SELFMATCHES%@"
,predicateStr)
return
predicate.evaluateWithObject(currObject)
}
}
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |