iOS 用正则表达式验证邮箱和手机号

1.验证邮箱

+ (BOOL)validateEmail:(NSString *)email {

NSString *emailRegex = @"[A-Z0-9a-z._%+-][email protected][A-Za-z0-9.-]+\\.[A-Za-z]{2,4}"; NSPredicate *emailTest = [NSPredicate          predicateWithFormat:@"SELF MATCHES %@", emailRegex]; return [emailTest evaluateWithObject:email];

}

2.验证手机(简单判断)

+ (BOOL)validatePhone:(NSString *)phone {

NSString *phoneRegex = @"1[3|5|7|8|][0-9]{9}"; NSPredicate *phoneTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", phoneRegex]; return [phoneTest evaluateWithObject:phone];

}

3.验证手机(复杂判断)

//正则判断手机号码格式

+ (BOOL)validatePhone:(NSString *)phone

{

/**

* 手机号码

* 移动:134[0-8],135,136,137,138,139,150,151,157,158,159,182,187,188

* 联通:130,131,132,152,155,156,185,186

* 电信:133,1349,153,180,189

*/

NSString * MOBILE = @"^1(3[0-9]|5[0-35-9]|8[025-9])\\d{8}$";

/**

10         * 中国移动:China Mobile

11         * 134[0-8],135,136,137,138,139,150,151,157,158,159,182,187,188

12         */

NSString * CM = @"^1(34[0-8]|(3[5-9]|5[017-9]|8[278])\\d)\\d{7}$";

/**

15         * 中国联通:China Unicom

16         * 130,131,132,152,155,156,185,186

17         */

NSString * CU = @"^1(3[0-2]|5[256]|8[56])\\d{8}$";

/**

20         * 中国电信:China Telecom

21         * 133,1349,153,180,189

22         */

NSString * CT = @"^1((33|53|8[09])[0-9]|349)\\d{7}$";

/**

25         * 大陆地区固话及小灵通

26         * 区号:010,020,021,022,023,024,025,027,028,029

27         * 号码:七位或八位

28         */

// NSString * PHS = @"^0(10|2[0-5789]|\\d{3})\\d{7,8}$";

NSPredicate *regextestmobile = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", MOBILE];

NSPredicate *regextestcm = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", CM];

NSPredicate *regextestcu = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", CU];

NSPredicate *regextestct = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", CT];

if (([regextestmobile evaluateWithObject:phone] == YES)

|| ([regextestcm evaluateWithObject:phone] == YES)

|| ([regextestct evaluateWithObject:phone] == YES)

|| ([regextestcu evaluateWithObject:phone] == YES))

{

if([regextestcm evaluateWithObject:phone] == YES) {

NSLog(@"China Mobile");

} else if([regextestct evaluateWithObject:phone] == YES) {

NSLog(@"China Telecom");

} else if ([regextestcu evaluateWithObject:phone] == YES) {

NSLog(@"China Unicom");

} else {

NSLog(@"Unknow");

}

return YES;

}

else

{

return NO;

}

}

时间: 2024-10-08 22:22:26

iOS 用正则表达式验证邮箱和手机号的相关文章

用正则表达式验证邮箱与手机号的合法性

正则表达式,又称正规表示法.常规表示法(英语:Regular Expression,在代码中常简写为regex.regexp或RE),计算机科学的一个概念.正则表达式使用单个字符串来描述.匹配一系列符合某个句法规则的字符串. iOS开发中,需要用正则表达式来判断一个字符串是否合法,如: 1,app注册页面中,需要判断用户输入的手机号是否够11位,或者邮箱格式是否正确: 2,意见反馈中,判断邮箱格式是否正确. 验证邮箱格式: + (BOOL)validateEmail:(NSString *)em

用正则表达式验证邮箱和手机号

正则表达式,又称正规表示法.常规表示法(英语:Regular Expression,在代码中常简写为regex.regexp或RE),计算机科学的一个概念.正则表达式使用单个字符串来描述.匹配一系列符合某个句法规则的字符串. 做iOS开发的童鞋,应该都用过正则表达式吧.正则表达式很好地,帮助我们判断一个字符串是否合法.比如: 在做app注册页面的时候,需要判断手机号是否格式正确,是否够11位. 在做意见反馈的时候,需要判断邮箱格式是否正确. 判断手机号和判断邮箱,应该是iOS开发者们最常用的.具

Android正则表达式验证邮箱地址

1 // 邮箱有效性验证 2 Pattern pattern = Pattern 3 .compile("\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*"); 4 Matcher mc = 5 pattern.matcher(RegistMail.getText().toString().trim()); 其中RegistMail为一个EditText控件,用来处理用户的邮箱输入. Android正则表达式验证邮箱地址,布布扣,bu

js正则表达式:验证邮箱格式、密码复杂度、手机号码、QQ号码

直接上代码 Java 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83

正则表达式验证邮箱,qq,座机,手机,网址

手机: var reg=/^1[34578]\d{9}$/; if(reg.test("你输入的手机号码") ) { alert("手机号码输入正确") } else { alert("手机号码输入有误") } QQ: var reg=/^[1-9]\d{4,11}$/; 邮箱: var reg=/^\w+@[0-9a-zA-Z\-]+(\.[a-zA-Z]{2,6}){1,2}$/; 网址: var reg=/^(https?:\/\/)?([

正则表达式验证邮箱、电话号码

验证电话号码的正则:(\d{3}-)(\d{8})$|(\d{4}-)(\d{7})$|(\d{4}-)(\d{8})$ (这里的电话号码为新式的号码) 验证邮箱的正则:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)* \w任意大小写英文字母 0-9数字 下划线 +为至少出现1个以上字符 [-+.]\w+ 任意包含 - + . 及 \w字符的组合出现0次或多次 @ 固定符号 \w+ 出现至少1次以上 \w的字符 [-.]\w+ 出现零次或多次这种组合的字符

利用正则表达式验证邮箱

/利用正则表达式验证邮箱+ (BOOL)isValidateEmail:(NSString *)email{        NSString *emailRegex = @"[A-Z0-9a-z._%+-][email protected][A-Za-z0-9.-]+\\.[A-Za-z]{2,4}"; NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", emai

5、正则表达式验证邮箱

package com.xxx.xxx; public class demo6 { /** * 正则表达式验证邮箱 * @param args */ public static void main(String[] args) { //定义要匹配 E_mail地址的正则表达式 String regex = "\\[email protected]\\w+(\\.\\w{2,3})*\\.\\w{2,3}"; //定义要进行验证的字符串 String str1 = "[emai

正则表达式验证邮箱的合法性

//利用正则表达式验证邮箱的合法性 -(BOOL)isValidateEmail:(NSString *)email { NSString *emailRegex = @"[A-Z0-9a-z._%+-][email protected][A-Za-z0-9.-]+\\.[A-Za-z]{2,4}"; NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", email