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

Clean Architectures in Python A practical approach to better software design By 作者: Leonardo Giordani Pub Date: 2019 ISBN: n/a Pages: 171 Language: English Format: PDF Size: 10 Mb The clean architecture is the opposite of spaghetti code, where everything is interlaced and there are no single elements that can be easily detached from the rest and replaced without the whole system collapsing. The main point of the clean architecture is to make clear “what is where and why”, and this should be your first concern while you design and implement a software system, whatever architecture or development methodology you want to follow. This book is divided into two parts. The first part is about Test-driven Development (TDD), a programming technique that will help you more reliable and easily modifiable software. I will first guide you through a very simple example in chapter 1, demonstrating how to use TDD to approach a project, and how to properly create tests from requirements. In chapter 2 I will then discuss unit testing from a more theoretical point of view, categorising functions and their tests. Chapter 3 will introduce mocks, a powerful tool that helps to test complex scenarios. The second part introduces the clean architecture. The first chapter discusses briefly the components and the ideas behind this software structure, while chapter 2 runs through a concrete example of clean architecture for a very simple web service. Chapter 3 discusses error management and improvements to the Python code developed in the previous chapter. Finally, chapter 4 shows how to plug different database systems to the web service created previously.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值