正则

//
//  ViewController.m
//  10.22周考
//
//  Created by 毅先森 on 2018/10/22.
//  Copyright © 2018 刘毅. All rights reserved.
//

#import "ViewController.h"
#import <LocalAuthentication/LocalAuthentication.h>
#import "twoViewController.h"


@interface ViewController ()
@property (weak, nonatomic) IBOutlet UIImageView *Imgv;
@property (weak, nonatomic) IBOutlet UITextField *Usertf;
@property (weak, nonatomic) IBOutlet UITextField *Passwordtf;

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    self.Imgv.layer.masksToBounds = YES;
    self.Imgv.layer.cornerRadius = 50;
    
}
- (IBAction)Btn:(id)sender {
    if ([self.Usertf.text isEqualToString:@""] || [self.Passwordtf.text isEqualToString:@""]) {
        UIAlertView *aler =[[UIAlertView alloc] initWithTitle:@"提示" message:@"账户、密码不能为空" delegate:self cancelButtonTitle:@"确定" otherButtonTitles:nil, nil];
        [aler show];
        
    }else{
        if ([self judgePassWordLegal:_Passwordtf.text]==YES) {
                LAContext *authenticationContext = [[LAContext alloc]init];
                NSError* error = [[NSError alloc]init];
                BOOL  isTouchIdAailable = [authenticationContext canEvaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics error:nil];
            
                if (isTouchIdAailable) {
                    NSLog(@"认证成功");
                    [authenticationContext evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics localizedReason:@"需要验证您的指纹来确认您的身份信息" reply:^(BOOL success, NSError * _Nullable error) {
                        if(success) {
                            dispatch_async(dispatch_get_main_queue(), ^{
                                twoViewController *sec =[[twoViewController alloc] init];
                                [self presentViewController:sec animated:YES completion:nil];
                            });
                            NSLog(@"恭喜,您通过了Touch ID指纹验证!");
                        }else{
                            NSLog(@"抱歉,您未通过了Touch ID指纹验证!");
                        }
                    }];
                }else{
                        UIAlertController *alertvc =[UIAlertController alertControllerWithTitle:@"提示" message:@"不支持 touchID/fachID" preferredStyle:UIAlertControllerStyleAlert];
                        [alertvc addAction:[UIAlertAction actionWithTitle:@"确定" style:UIAlertActionStyleCancel handler:nil]];
                        [self presentViewController:alertvc animated:YES completion:nil];
                    }
        }else{
            UIAlertView *aler =[[UIAlertView alloc] initWithTitle:@"提示" message:@"密码 格式不正确" delegate:self cancelButtonTitle:@"确定" otherButtonTitles:nil, nil];
            [aler show];
        }
    }

}
-(BOOL)judgePassWordLegal:(NSString *)_textfile{
    BOOL result = false;
    if ([_textfile length] >= 8){
        // 判断长度大于8位后再接着判断是否同时包含数字和字符
        NSString * regex = @"^[0-9A-Za-z]{4,16}$";
        NSPredicate *pred = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", regex];
        result = [pred evaluateWithObject:_textfile];
    }
    return result;
}


@end

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值