正規表示式,又稱正規表示法、常規表示法(英語:regular expression,在**中常簡寫為regex、regexp或re),電腦科學的乙個概念。正規表示式使用單個字串來描述、匹配一系列符合某個句法規則的字串。
做ios開發的童鞋,應該都用過正規表示式吧。正規表示式很好地,幫助我們判斷乙個字串是否合法。比如:
在做意見反饋的時候,需要判斷郵箱格式是否正確。
判斷手機號和判斷郵箱,應該是ios開發者們最常用的。具體如何判斷,簡單整理如下:
+ (bool)validateemail:(nsstring *)email
"; nspredicate *emailtest = [nspredicate predicatewithformat:@"self matches %@", emailregex];
return [emailtest evaluatewithobject:email];
}
nspredicate是乙個foundation類,是用來查詢的,原理和用法都類似於sql中的where。
+ (bool)validatephone:(nsstring *)phone
"; nspredicate *phonetest = [nspredicate predicatewithformat:@"self matches %@", phoneregex];
return [phonetest evaluatewithobject:phone];
}
這只是簡單地判斷手機號格式。其實手機的格式還是有一點複雜的。
//正則判斷手機號碼格式
+ (bool)validatephone:(nsstring *)phone
$"; /**
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$";
/**15 * 中國聯通:china unicom
16 * 130,131,132,152,155,156,185,186
17 */
nsstring * cu = @"^1(3[0-2]|5[256]|8[56])\\d$";
/**20 * 中國電信:china telecom
21 * 133,1349,153,180,189
22 */
nsstring * ct = @"^1((33|53|8[09])[0-9]|349)\\d$";
/**25 * 大陸地區固話及小靈通
26 * 區號:010,020,021,022,023,024,025,027,028,029
27 * 號碼:七位或八位
28 */
// nsstring * phs = @"^0(10|2[0-5789]|\\d)\\d$";
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))
else
if([regextestct evaluatewithobject:phone] == yes) else
if ([regextestcu evaluatewithobject:phone] == yes) else
return yes;
}else
}
以上這段(來自網路)是手機號判斷的詳細方法。基本上這個判斷就夠用了,如果三大運營商,再出其他段的手機號。直接子啊上面做簡單修改即可。 手機號驗證正規表示式
手機號驗證的正則為 var reg 0 13 0 9 15 7 9 153 156 18 7 9 0 9 var reg 0 13 0 9 15 0 9 0 9 移動手機號的驗證正則為 var reg 0 13 4 9 15 7 9 15 0 2 18 7 8 0 9 手機號驗證正規表示式 昨天找了...
正則匹配手機號,郵箱(關於正規表示式)
表示式 表示或者 表示或者 a z 表示所有的小寫字母 a z 表示所有的大寫字母 a z 表示所有的字母 a za z 表示所有的字母 0 9 表示所有數字 12 表示1或者2 表示取反 0 9 非數字 量詞 表示出現的次數 表示出現n到m次 表示出現n到無限次 表示1次到無限次 表示0次到無限次...
js正規表示式驗證賬號手機號電話郵箱
1.賬號 規則 字母 數字 下劃線組成,字母開頭,4 16位。表示式 a za z w 2.手機號 規則 11位數字,以1開頭 表示式 1 d 3.號碼 規則 區號 號碼,區號以0開頭,3位或4位號碼由7位或8位數字組成區號與號碼之間可以無連線符,也可以 連線 表示式 0 d d 4.郵箱 第一部分...