//邮箱

+ (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) 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];
}
//昵称
+ (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];
}

转载于:https://www.cnblogs.com/yjg2014/p/3812436.html

iOS - 正则表达式判断邮箱、身份证..是否正确相关推荐

  1. html正则邮箱格式,JS正则表达式判断邮箱格式是否正确

    用indexOf()函数也可判断邮箱格式中是否可以包含"@",看上去似乎可以判断成功了,但稍懂点JS的一看就知道问题出在哪儿?就连我这JS菜鸟也发现问题了. 举个例子,一般的邮箱格 ...

  2. 微信小程序正则表达式判断邮箱格式

    怎么用正则表达式判断邮箱的格式是否正确 邮箱的基本格式:名称@域名,需要用^匹配油箱的开始部分,用KaTeX parse error: Can't use function '\.' in math ...

  3. java正则判断日期格式_Java中用正则表达式判断日期格式是否正确

    1.Java中用正则表达式判断日期格式是否正确 DateType.java: /** * @Title:DateType.java * @Package:com.you.dao * @Descript ...

  4. 判断邮箱 格式是否正确

    /练习:判断邮箱格式是否正确 //1.有且只能有一个@ contains @ indexof @=lastindexof //2.不能以@开头 indexof != 0 //3.@之后至少有一个. / ...

  5. ios利用正则表达式判断手机号码格式是否正确

    //判断手机号码格式是否正确 + (BOOL)valiMobile:(NSString *)mobile { mobile = [mobile stringByReplacingOccurrences ...

  6. 利用正则表达式判断邮箱

    我的博客https://blog.ideaopen.cn 日常开发中,判断邮箱是少不了的,这个我以C#为例,来写一个判断方法,正则表达式是通用的,CV就可以 首先引入正则需要使用的命名空间 //正则验 ...

  7. js正则表达式检测邮箱地址是否正确

    一般的邮箱格式为:123456@qq.com,若用indexOf来判断此email地址,那么当用户输入了123456@qq的时候,检测仍可通过,明显这个地址缺少了后面的".com" ...

  8. JS正则表达式判断邮箱

    什么是正则表达式? 正则表达式(英语:Regular Expression,在代码中常简写为regex.regexp或RE)使用单个字符串来描述.匹配一系列符合某个句法规则的字符串搜索模式. 正则表达 ...

  9. Android 使用正则表达式验证邮箱格式是否正确

    /*** 验证邮箱格式是否正确*/public boolean emailValidation(String email) {String regex = "\\w+([-+.]\\w+)* ...

最新文章

  1. 苏炳添招研究生了!上课画面曝光,网友:千万不要逃课……
  2. Fragment的运用实列
  3. python基础(1.5-1.7)
  4. python -- numpy 基本数据类型,算术运算,组合,分割 函数
  5. Mybatis代码生成适配Oracle和Mysql数据库_01
  6. iMac 是什么?苹果2021新款 iMac 购买建议
  7. Java关于周跨年的周数计算
  8. 【JEECG dubbo专题】Dubbo与Zookeeper、SpringMVC整合和使用(负载均衡、容错)
  9. 微信小程序 webview 传递URL中含有特殊字符-,=
  10. Qt总结之二十三:QByteArray与char、int、float(及其数组)之间的互相转化
  11. 微软全力推广Silverlight 挑战Flash垄断地位
  12. java源码简体转繁体
  13. PHP中MD5函数效率
  14. U盘 / 移动硬盘在 Mac 苹果电脑上无法使用问题
  15. 电机与拖动 - 1 绪论
  16. cad怎么画立体图形教学_cad怎么绘制三维图形,cad三维制图实例图文教程
  17. Resnet解决了什么问题
  18. 警告标志:警告车辆、行人注意危险地点的标志
  19. java二重积分_《University Calculus》-chaper13-多重积分-二重积分的引入
  20. 功能覆盖率实验第二讲:coverage中at_leat用法

热门文章

  1. gstreamer插件开发_测评丨高性能多媒体处理器—飞凌OKMX8MM-C开发板
  2. 文献阅读-Pan-Cancer Analysis of lncRNA Regulation Supports Their Targeting of Cancer Genes in Each Tumor
  3. ant design vue table 高度自适应_Vue.JS 实现拼拼乐小游戏项目
  4. python自动化面试提问_Python自动化测试笔试面试题精选
  5. Windows10下VB6.0开发——ini文件存储参数信息
  6. Mysql 索引是如何实现的?
  7. spark 读写SequenceFile
  8. spark 持久化机制入门
  9. Windows核心编程MFC_gdi+发光字
  10. 通过Ajax进行POST提交JSON类型的数据到SpringMVC Controller的方法