IOS 常用正则汇总

来源:互联网 发布:java webservice部署 编辑:程序博客网 时间:2024/06/06 16:49

IOS 常用正则汇总

1、验证手机号

//验证手机号func validateMobile(strMobileNum:String)->Bool{    /**     // 手机号码     // 移动:134[0-8],135,136,137,138,139,150,151,157,158,159,182,183,184,187,188     // 联通:130,131,132,152,155,156,176,185,186     // 电信:133,1349,153,177,180,181,189          NSString *strNum = @"^1(34[0-8]|47[0-9]|(3[5-9]|5[017-9]|8[23478])\\d)\\d{7}$"; //移动     NSPredicate *regextest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",strNum];     if ([regextest evaluateWithObject:_strMobileNum] == YES)     return YES;          strNum = @"^1(3[0-2]|5[256]|8[56]|76)\\d{8}$";                                  //联通     regextest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",strNum];     if ([regextest evaluateWithObject:_strMobileNum] == YES)     return YES;          strNum = @"^1((33|53|77|8[019])[0-9]|349)\\d{7}$";                              //电信     regextest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",strNum];     if ([regextest evaluateWithObject:_strMobileNum] == YES)     return YES;     */        let strNum = "^(13|14|15|17|18)[0-9]{9}$";    let regextest = NSPredicate(format: "SELF MATCHES %@", strNum);    return regextest.evaluate(with: strMobileNum);    }

2、验证邮箱

//验证邮箱func validateEmail(email:String)->Bool{    let emailRegex = "^([a-zA-Z0-9_\\.\\-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9])+$";    let emailTest = NSPredicate(format: "SELF MATCHES %@", emailRegex);    return emailTest.evaluate(with: email);}

3、验证用户名

//用户名只能是字母、数字、中文func validateUserName(strUserName:String)->Bool{    let predUserName = NSPredicate(format: "SELF MATCHES %@", "^[A-Za-z0-9\\u4e00-\\u9fa5]{2,20}$");    return predUserName.evaluate(with: strUserName);}

更多 NSPredicate 对象的使用请参考如下文章:
【iOS开发技术】NSPredicate谓词的用法 数组过滤

1 0
原创粉丝点击