//校驗密碼
+(bool)checkpass:(nsstring*)pass
nsstring *regex = @"^[a-za-z0-9]+$";
nspredicate *predicate = [nspredicate predicatewithformat:@"self matches %@ and self.length > 5 and self.length < 17", regex];
return [predicate evaluatewithobject:pass];
}//校驗**號碼
+(bool)checkisphone:(nsstring*)str
"; nspredicate *predicate = [nspredicate predicatewithformat:@"self matches %@", regex];
return [predicate evaluatewithobject:str];
}//校驗是否是數字
+(bool)checkisnumber:(nsstring*)str
nsstring *regex = @"^(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*))$";//@"^[0-9]+$";
nspredicate *predicate = [nspredicate predicatewithformat:@"self matches %@ ", regex];
return [predicate evaluatewithobject:str];
}
//身份證號
+ (bool)checkisidentitycard: (nsstring *)identitycard
//判斷是否是18位,末尾是否是x
nsstring *regex2 = @"^(\\d|\\d)(\\d|[xx])$";
nspredicate *identitycardpredicate = [nspredicate predicatewithformat:@"self matches %@",regex2];
if(![identitycardpredicate evaluatewithobject:identitycard])
//判斷生日是否合法
nsrange range = nsmakerange(6,8);
nsstring *datestr = [identitycard substringwithrange:range];
nsdateformatter *formatter = [[nsdateformatter alloc] init];
[formatter setdateformat : @"yyyymmdd"];
if([formatter datefromstring:datestr]==nil)
//判斷校驗位
if(identitycard.length==18)
int idcardmod=idcardwisum%11;//計算出校驗碼所在陣列的位置
nsstring *idcardlast=[identitycard substringwithrange:nsmakerange(17,1)];//得到最後一位身份證號碼
//如果等於2,則說明校驗碼是10,身份證號碼最後一位應該是x
if(idcardmod==2)else
}elseelse}}
return no;
}
IOS常用正規表示式
原文 匹配中文 u4e00 u9fa5 英文本母 a za z 數字 0 9 匹配中文,英文本母和數字及 u4e00 u9fa5 a za z0 9 同時判斷輸入長度 u4e00 u9fa5 a za z0 9 w u4e00 u9fa5 uf900 ufa2d 1 乙個正規表示式,只含有漢字 數字...
正規表示式判斷
public class test 校驗輸入的qq號碼是否符合規則 param qq return public static boolean checkqq1 string qq 如果qq號碼中有任何一位不是數字,就直接返回false for int i 0 i qq.length i 如果首位是...
iOS 正規表示式
正規表示式,又稱正規表示法 常規表示法 英語 regular expression,在 中常簡寫為regex regexp或re 電腦科學的乙個概念。正規表示式使用單個字串來描述 匹配一系列符合某個句法規則的字串。在很多文字編輯器裡,正規表示式通常被用來檢索 替換那些符合某個模式的文字。系統自帶的,...