python re.search() 활용 비밀번호 검사?

seonghyeon·2022년 1월 3일
0

re ( 정규식 연산) 모듈을 사용하여 파이썬에서 비밀번호 조건 검사
.search( pattern, string)
string 을 검사하여 pattern 에 들어가는 정규식과 일치하면 일치 객체 반환 (일치객체는 항상 True를 가짐), 일치하지 않으면 None 을 반환 합니다
이것을 이용하여 정규표현식을 파이썬에서 구현하여 변경될 새비밀번호가 유효한지를 검사하게 하여 구현 함

if old == user_pw :
        if new_receive == new_2_receive:
            if len(new_receive) < 8:
                return jsonify({'result': 'fail','msg':'새 비밀번호가 8자 이하입니다.'})
            elif re.search('[0-9]',new_receive) is None:
                return jsonify({'result': 'fail','msg':'숫자를 포함해주세요.'})
            elif re.search('[a-z]',new_receive) is None: 
                return jsonify({'result': 'fail','msg':'영문 문자를 포함해주세요.'})
            else:
                pw_hash = hashlib.sha256(new_receive.encode('utf-8')).hexdigest()
            
                db.user.update_one({'id':user_id},{'$set':{'pw': pw_hash}})
                return jsonify({'result': 'success','msg':'비밀번호가 변경 되었습니다.'})
        else:
            return jsonify({'result': 'fail','msg':'새 비밀번호가 서로 맞지않습니다.'})
    else:
        return jsonify({'result': 'fail', 'msg':'비밀번호가 틀렸습니다.'})

0개의 댓글