iOS验证邮箱, 手机号, 密码, 账户名 --- 正则表达式

翻译 2015年07月07日 01:43:40
//邮箱
+ (BOOL) validateEmail:(NSString *)email
{
    NSString *emailRegex = @"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}";
    NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", emailRegex];
    return [emailTest evaluateWithObject:email];
}
 
 
//手机号码验证
+ (BOOL) validateMobile:(NSString *)mobile
{
    //手机号以13, 15,18开头,八个 \d 数字字符
    NSString *phoneRegex = @"^((13[0-9])|(15[^4,\\D])|(18[0,0-9]))\\d{8}$";
    NSPredicate *phoneTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",phoneRegex];
    return [phoneTest evaluateWithObject:mobile];
}
 
 
//车牌号验证
+ (BOOL) validateCarNo:(NSString *)carNo
{
    NSString *carRegex = @"^[\u4e00-\u9fa5]{1}[a-zA-Z]{1}[a-zA-Z_0-9]{4}[a-zA-Z_0-9_\u4e00-\u9fa5]$";
    NSPredicate *carTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",carRegex];
    NSLog(@"carTest is %@",carTest);
    return [carTest evaluateWithObject:carNo];
}
 
 
//车型
+ (BOOL) validateCarType:(NSString *)CarType
{
    NSString *CarTypeRegex = @"^[\u4E00-\u9FFF]+$";
    NSPredicate *carTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",CarTypeRegex];
    return [carTest evaluateWithObject:CarType];
}
 
 
//昵称
+ (BOOL) validateNickname:(NSString *)nickname
{
    NSString *nicknameRegex = @"^[\u4e00-\u9fa5]{4,8}$";
    NSPredicate *passWordPredicate = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",nicknameRegex];
    return [passWordPredicate evaluateWithObject:nickname];
}
 
 
//身份证号
+ (BOOL) validateIdentityCard: (NSString *)identityCard
{
    BOOL flag;
    if (identityCard.length <= 0) {
        flag = NO;
        return flag;
    }
    NSString *regex2 = @"^(\\d{14}|\\d{17})(\\d|[xX])$";
    NSPredicate *identityCardPredicate = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",regex2];
    return [identityCardPredicate evaluateWithObject:identityCard];
}
//用户名
+ (BOOL) validateUserName:(NSString *)name
{
    NSString *userNameRegex = @"^[A-Za-z0-9]{6,20}+$";
    NSPredicate *userNamePredicate = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",userNameRegex];
    BOOL B = [userNamePredicate evaluateWithObject:name];
    return B;
}
 
 
//密码
+ (BOOL) validatePassword:(NSString *)passWord
{
    NSString *passWordRegex = @"^[a-zA-Z0-9]{6,20}+$";
    NSPredicate *passWordPredicate = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",passWordRegex];
    return [passWordPredicate evaluateWithObject:passWord];
}
 
 

关于密码的正则表达式(6-16位数字和字母的组合)

^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,16}$ 测试通过
  • littleqiang520
  • littleqiang520
  • 2016年10月10日 16:52
  • 11988

iOS正则表达式判断密码

iOS 正则表达式 不能全部为数字 不能全部为字母 必须包含字母和数字 6-20位 -(BOOL)checkPassWord { //6-20位数字和字母组成 NSString *re...
  • xutianyu930818
  • xutianyu930818
  • 2015年04月28日 09:26
  • 5609

mac邮箱无法验证账户名和密码问题

这种问题查了一下,其实知道原理就好解决了。 python或者go等语言里面都有比较简单的发送邮件的代码,而里面的机制是用的smtp服务。 我自己写的程序里面也是用的这个smtp服务给自己发送邮件的,详...
  • u011466175
  • u011466175
  • 2015年12月26日 20:53
  • 7369

Android正则表达式,验证邮箱、手机号码等。

最近越来越多的使用正则表达式来判断、验证,所以给大家找了一个工具类,仅供参考: package com.bwie.test.mynsgshop_two.mine.view; import java...
  • PenTablet
  • PenTablet
  • 2017年11月15日 09:42
  • 527

Android(Java)正则表达式判断手机号、邮箱、身份证号码、密码、Url、邮编等工具类

package cn.haokuai.maya.suppliers.app.common; import java.text.SimpleDateFormat; import java.util.C...
  • u014440968
  • u014440968
  • 2015年02月03日 10:02
  • 920

JS验证表达式验证手机号、邮箱、等常规验证

1. 验证用户输入的手机号是否合法 var phoneReg = /^1[3-578]\d{9}$/; function isPhoneAvailable(phonevalue){ ...
  • qq_36846234
  • qq_36846234
  • 2018年01月13日 15:42
  • 83

js——正则表达式 验证邮箱、手机号、密码、用户名是否合法

\d,\w,\s,[a-zA-Z0-9],\b,.,*,+,?,x{3},^$分别是什么? \d:匹配数字 \w:匹配字母或数字或下划线或汉字 \s:匹配任意的空白符 [a-zA-z0-9]:...
  • lengyuefengqing
  • lengyuefengqing
  • 2016年07月03日 19:07
  • 3213

正则表达式--各种验证所需的正则

1.xml文件:^([a-zA-Z]+-?)+[a-zA-Z0-9]+\\.[x|X][m|M][l|L]$ 2.用的unicode字符的来进行匹配 中文字符的正则表达式:^[\u4E00-\u9...
  • u012465383
  • u012465383
  • 2018年01月11日 15:23
  • 104

邮箱、手机号验证的正则

邮箱的验证: function checkvalue(){ if(a_form.email.value=="") {    alert("电子邮箱不能为空!");    a_fo...
  • anlukun
  • anlukun
  • 2013年03月18日 11:08
  • 4265

swift 手机号、邮箱、网址等正则表达式验证

看到一个不错的swift的 手机号、邮箱、网址等正则表达式验证,分享给大家。 import Foundation enum Validate { case email(_: String) ...
  • YubaoLouisLiu
  • YubaoLouisLiu
  • 2017年08月19日 16:14
  • 471
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:iOS验证邮箱, 手机号, 密码, 账户名 --- 正则表达式
举报原因:
原因补充:

(最多只允许输入30个字)