网络编程 
首页 > 网络编程 > 浏览文章

正则表达式限制 账号 密码 邮箱 身份证 手机号的相关代码

(编辑:jimmy 日期: 2024/10/10 浏览:3 次 )

废话不多说了,直接给大家贴实现此功能的正则表达式代码了,具体代码如下所示:

#import <Foundation/Foundation.h>
int main() {
// "";
//正则表达式
NSString *regex = @"^\\d*$";
// NSString *regex = @"^[0-9]{3,4}-[0-9]{7,8}$";
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF MATCHES%@",regex];//创建需要满足上面的正则表达式的谓词
NSLog(@"该电话号码:%d",[predicate evaluateWithObject:tel]);
//用户名 (第一位必须是字母,6-16位,只能有字母,数字或下划线)
NSString *user = @"m54355";
NSString *regex1 = @"^[A-Za-z]\\w{5,15}$";
NSPredicate *predicate1 = [NSPredicate predicateWithFormat:@"SELF MATCHES%@",regex1];
// NSLog(@"该电话号码:%d",[predicate1 evaluateWithObject:user]);
// //身份证
// NSString *user1 = @"610125199301300814";
// NSString *regex2 = @"^\\d{17}[\\dxX]$";
// NSPredicate *predicate2 = [NSPredicate predicateWithFormat:@"SELF MATCHES%@",regex2];
// NSLog(@"该身份证:%d",[predicate2 evaluateWithObject:user1]);
//邮箱
NSString *mailbox = @"101707383@qq.com";
NSString *regex3 = @"^[a-zA-Z0-9._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}$";
NSPredicate *predicate3 = [NSPredicate predicateWithFormat:@"SELF MATCHES%@",regex3];
// NSLog(@"该邮箱:%d",[predicate3 evaluateWithObject:mailbox]);
//手机号
// NSString *phone = @"18709259205";
// NSString *regex4 = @"^1[3|4|5|7|8]\\d{9}$";
// NSPredicate *predicate4 = [NSPredicate predicateWithFormat:@"SELF MATCHES%@",regex4];
// NSLog(@"该手机:%d",[predicate4 evaluateWithObject:phone]);
if ([predicate1 evaluateWithObject:user] == 1) {
if ([predicate3 evaluateWithObject:mailbox] == 1) {
NSLog(@"登录成功");
}
}else{
NSLog(@"错误");
}
return 0;
}

上一篇:Python正则表达式之基础篇
下一篇:65条最常用正则表达式 你要的都在这里了
一句话新闻
高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。