iOS中常用的正则表达式
生活随笔
收集整理的這篇文章主要介紹了
iOS中常用的正则表达式
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
正則表達式是什么鬼呀?(大神請繞路哦)
在編寫處理字符串的程序或網頁時,經常會有查找符合某些復雜規則的字符串的需要。正則表達式就是用于描述這些規則的工具。換句話說,正則表達式就是記錄文本規則的代碼。很可能你使用過Windows/Dos下用于文件查找的通配符(wildcard),也就是*和?。如果你想查找某個目錄下的所有的Word文檔的話,你會搜索*.doc。在這里,*會被解釋成任意的字符串。和通配符類似,正則表達式也是用來進行文本匹配的工具,只不過比起通配符,它能更精確地描述你的需求——當然,代價就是更復雜——比如你可以編寫一個正則表達式,用來查找所有以0開頭,后面跟著2-3個數字,然后是一個連字號“-”,最后是7或8位數字的字符串(像010-12345678或0376-7654321)。嘿嘿嘿!正則表達式小王我也是略懂皮毛。只會些簡單的。
iOS中常用的正則表達式有哪些呢?
/郵箱+ (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]; }哈哈,iOS中的正則表達式遠遠不止這么多,這些只是小王覺得在項目中最最常用滴,根據項目的實際需求還需要重新設計嘿!等以后用到新滴一定第一時間給大家分享,哈哈哈。大神,請繞路!
最后再獻上一份博客關于正則表達式的理論博客《正則表達式30分鐘入門教程》,http://deerchao.net/tutorials/regex/regex.htm#mission
總結
以上是生活随笔為你收集整理的iOS中常用的正则表达式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: IOleItemContainer的接口
- 下一篇: CentOS 6.5自动化运维之基于DH