純數字:^\d+$
純字母:^[a-za-z]+$
純特殊字元:^[@#$%^&]+$ ps:特殊字元看你定義的標準是什麼
字母+數字:^(?!\d+$)(?![a-za-z]+$)[a-za-z\d]+$
字母+特殊字元:^(?![a-za-z]+$)(?![@#$%^&]+$)[a-za-z@#$%^&]+$
數字+特殊字元:^(?!\d+)(?![@#$%^&]+$)[\d@#$%^&]+$
字母+數字+特殊字元:^(?!\d+$)(?![a-za-z]+$)(?![@#$%^&]+$)[\da-za-z@#$%^&]+$
ios使用常用正規表示式驗證密碼身份證手機號
在專案中,我們在驗證使用者的輸入,最簡單的方法就是使用正規表示式了,ios系統也提供很方便的方法,讓我們可以輕鬆的來驗證使用者名稱,密碼,身份證好 ,手機號等;
下面附上我在專案中用到的正規表示式的驗證方法,
由於比較常用,大家最好封裝成+靜態的方法,便於使用:
我把常用的方法,使用靜態方法封裝到乙個 utils類裡面,直接使用類名呼叫即可:
標頭檔案:
//
// utils.h
// autosizing
//// created by yb on 15/2/7.
//#import
@inte***ce utils : nsobject
#pragma 正則匹配手機號
+ (bool)checktelnumber:(nsstring *) telnumber;
#pragma 正則匹配使用者密碼6-18位數字和字母組合
+ (bool)checkpassword:(nsstring *) password;
#pragma 正則匹配使用者姓名,20位的中文或英文
+ (bool)checkusername : (nsstring *) username;
#pragma 正則匹配使用者身份證號
+ (bool)checkuseridcard: (nsstring *) idcard;
#pragma 正則匹員工號,12位的數字
+ (bool)checkemployeenumber : (nsstring *) number;
#pragma 正則匹配url
+ (bool)checkurl : (nsstring *) url;
@end
.m實現檔案:
//
// utils.m
// autosizing
//// created by yb on 15/2/7.
//#import utils.h
@implementation utils
#pragma 正則匹配手機號
+ (bool)checktelnumber:(nsstring *) telnumber
; nspredicate *pred = [nspredicate predicatewithformat:@self matches %@, pattern];
bool ismatch = [pred evaluatewithobject:telnumber];
return ismatch;
}#pragma 正則匹配使用者密碼6-18位數字和字母組合
+ (bool)checkpassword:(nsstring *) password
; nspredicate *pred = [nspredicate predicatewithformat:@self matches %@, pattern];
bool ismatch = [pred evaluatewithobject:password];
return ismatch;
}#pragma 正則匹配使用者姓名,20位的中文或英文
+ (bool)checkusername : (nsstring *) username
; nspredicate *pred = [nspredicate predicatewithformat:@self matches %@, pattern];
bool ismatch = [pred evaluatewithobject:username];
return ismatch;
}#pragma 正則匹配使用者身份證號15或18位
+ (bool)checkuseridcard: (nsstring *) idcard
$)|([0-9]([0-9]|x)$);
nspredicate *pred = [nspredicate predicatewithformat:@self matches %@, pattern];
bool ismatch = [pred evaluatewithobject:idcard];
return ismatch;
}#pragma 正則匹員工號,12位的數字
+ (bool)checkemployeenumber : (nsstring *) number
;
nspredicate *pred = [nspredicate predicatewithformat:@self matches %@, pattern];
bool ismatch = [pred evaluatewithobject:number];
return ismatch;
}#pragma 正則匹配url
+ (bool)checkurl : (nsstring *) url
; nspredicate *pred = [nspredicate predicatewithformat:@self matches %@, pattern];
bool ismatch = [pred evaluatewithobject:url];
return ismatch;
}@end
使用方法示例:
if ([utils checktelnumber:@18801112020]) //匹配結果,為yes
else //匹配結果為no
更全面
正規表示式驗證
1,正規表示式是用用於驗證的,即符合正規表示式則通過驗證,所以首先它是個表示式,其次它需要用來驗證別人是不是和它匹配,所以需要有內建的 方法 2,使用情景 乙個input輸入框要求你輸入0 9的數字,如果你輸入非數字就會報錯 var reg 0 9 string input val reg.test...
正規表示式驗證
驗證 email string filter a z a za z0 9 a za z0 9 a za z0 9 匹配空白行的正規表示式 n s r 評注 可以用來刪除空白行 匹配html標記的正規表示式 s 評注 網上流傳的版本太糟糕,上面這個也僅僅能匹配部分,對於複雜的巢狀標記依舊無能為力匹配首...
驗證正規表示式
身份證號 驗證身份證號碼 var city function check idcard n n n.replace x i,a if city parseint n.substr 0,2 null bd n.substr 6,4 number n.substr 10,2 number n.subst...