日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

iOS开发——手机号,密码,邮箱,身份证号,中文判断

發布時間:2024/4/15 编程问答 47 豆豆
生活随笔 收集整理的這篇文章主要介紹了 iOS开发——手机号,密码,邮箱,身份证号,中文判断 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

???

???? 目前這些方面的判斷主要是用了正則表達式

?????

?

??? 手機號的判斷,目前主要是長度、均是數字,支持的號段由于第三方通訊比如京東通訊,小米通訊等支持的號段挺多,

??? 有171,170,135,147等等,所以號段限制簡單即可。

?? @"^((13[0-9])|(147)|(17[0-9])|(15[^4,\\D])|(18[0,0-9]))\\d{8}$"

??? 其實手機號格式主要是為了短信驗證,如果更簡單點保證11位數字即可。

?

?

??? 密碼驗證的條件比較多,除了位數,是否包含空格(用string方法單獨判斷空格),有個可能是符號啊,正角半角啊。至少包含兩種字符啊。

??? NSString * regex = @"^(?![\\d]+$)(?![a-zA-Z]+$)(?![^\\da-zA-Z]+$).{6,18}$";
??????? NSPredicate *pred = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", regex];
?????? BOOL isMatch = [pred evaluateWithObject:self.passwordField.currentString];
??????? if (isMatch == NO) { // 不符合上面的正則,提示
??????????
????????? 請輸入6-18位字符。僅支持數字、大寫字母、小寫字母和特殊符號,且至少包含其中2種
???????????
??????????? return;
????? }

????? 但密碼支持的較多字符時,有時可以單獨判斷密碼符合 ?密碼必須為unicode 0~127

????????? NSString * regex = @"^.*[\\u0000-\\u007f]{6,18}.*$";
??????????? NSPredicate *pred = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", regex];
??????????? BOOL isMatch = [pred evaluateWithObject:self.passwordField.currentString];
??????????? if (isMatch ==NO) {
?????????????? ?
??????????????? [BlackShowView alertViewShowInContentView:self.contentView message:@"請不要輸入過于特殊的字符作為密碼"];
?????????????? ?
??????????????? return;
??????????? }

?

? ? 郵箱的判斷比較簡單

? ? @"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}";

?

? ? 身份證號

??? @"^(\\d{14}|\\d{17})(\\d|[xX])$";

?

?

?? 還有有個比較常用的是判斷是否輸入了中文(注意此時是YES的狀態,及不能包含中文)

?????? // 是否包含中文^.*[\u4e00-\u9fa5].*$
??????? {
??????????? NSString * regex = @"^.*[\u4e00-\u9fa5].*$";
??????????? NSPredicate *pred = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", regex];
??????????? BOOL isMatch = [pred evaluateWithObject:self.accountField.currentString];
??????????? if (isMatch ==YES) {
?????????????? ?
??????????????? [BlackShowView alertViewShowInContentView:self.contentView message:@"賬號不能包含中文"];
?????????????? ?
??????????????? return;
??????????? }
?????? ?
?????? ?
??????? }

?

轉載于:https://www.cnblogs.com/LiuChengLi/p/5179980.html

總結

以上是生活随笔為你收集整理的iOS开发——手机号,密码,邮箱,身份证号,中文判断的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。