Regular expressions, also known as formal notation, conventional notation (English: Regular expression, often abbreviated in code as regex, RegExp, or re), is a concept of computer science. A regular expression uses a single string to describe and match a series of strings that conform to a certain syntactic rule.
In iOS development, you need to use regular expressions to determine whether a string is legitimate, such as:
1,app registration page, you need to determine whether the user entered the mobile phone number is sufficient 11 bits, or the mailbox format is correct;
2, in the feedback, determine whether the mailbox format is correct.
Verify the mailbox format:
+ (BOOL) Validateemail: (NSString *) email{ *emailregex = @ "[A-z0-9a-z._%+-][email Protected][a-za-z0-9.-]+\\. [A-za-z] {2,4} " ; *emailtest = [nspredicate predicatewithformat:@ "selfMATCHES%@" , Emailregex]; return [Emailtest evaluatewithobject:email];}
Note: Nspredicate is a foundation class that is used for querying, both in principle and in usage similar to where in SQL.
Verify phone Number:
//regular Judge cell phone number format+ (BOOL) Validatephone: (NSString *) phone{/** Mobile Phone number * Move: 134[0-8],135,136,137,138,139,150,151,157,158,159,182,187,188 * Unicom: 130,131,132,152,1 55,156,185,186 * Telecom: 133,1349,153,180,189*/NSString* MOBILE =@"^1 (3[0-9]|5[0-35-9]|8[025-9]) \\d{8}$"; /** 10 * Mobile: China Mobile 11 * 134[0-8],135,136,137,138,139,150,151,157,158,159,182,187,1 about*/NSString* CM =@"^1 (34[0-8]| ( 3[5-9]|5[017-9]|8[278] \\d) \\d{7}$"; /** 15 * Unicom: China Unicom * 130,131,132,152,155,156,185,186*/NSString* CU =@"^1 (3[0-2]|5[256]|8[56]) \\d{8}$"; /** 20 * China Telecom: Telecom * 133,1349,153,180,189*/NSString* CT =@"^1 ((33|53|8[09]) [0-9]|349) \\d{7}$"; /** 25 * Mainland China Landline and PHS 26 * Area code: 010,020,021,022,023,024,025,027,028,029 27 * Number : seven-bit or eight-bit*/ //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"); } returnYES; } Else { returnNO; }}
The above code (from the network), pro-knock through verification, can be used in development. Thank the Author!
Verifying the legality of mailbox and mobile phone numbers with regular expressions