230705_Wed

KH·2023년 7월 4일
0

TIL

목록 보기
25/58
post-thumbnail

Problems

fix: 비밀번호 정규표현식

Attempts

비밀번호 요구사항에 맞게 정규표현식 다시 씀

예)
"^(?=.*[someChars])[someChars]"

(?=.*[someChars]) <- 하나라도 있나 검사
[someChars] <- 얘들로만 구성되어야 함

ref .

  1. https://regexr.com/
    연습하기 좋은 사이트

  2. https://mkyong.com/regular-expressions/how-to-validate-password-with-regular-expression/
    처음에 이곳에서 스니펫 가져와서 썼는데, 내 환경에서는 사이트 예시와 달리 특수문자 [ ] -앞에 \\붙여야 정상적으로 인식했음.

"^(?=.*[0-9])(?=.*[a-z])(?=.*[A-Z])(?=.*[특수문자]).{8,20}$"; 변경전

"^(?=.*[0-9])(?=.*[a-zA-Z])(?=.*[특수문자])[0-9a-zA-Z특수문자]{8,15}$" 변경후

[0-9a-zA-Z특수문자]로만 이루어져 있나 검사하려고 뒤에 추가해줌

Results

    @Pattern(regexp = "^(?=.*[0-9])(?=.*[a-zA-Z])(?=.*[!\"#$%&'()*+,\\-./:;<=>?@\\[₩\\]^_`{|}~])"
            + "[0-9a-zA-Z!\"#$%&'()*+,\\-./:;<=>?@\\[₩\\]^_`{|}~]{8,15}$"
            , message = "비밀번호 규칙에 어긋남")

Insights

PR 하기 전에 최소한 테스트는 하자...

테스트도 안하고 PR 했더니 페어한테 미안한 상황이 되버림. 앞으로는 이러지 말자

profile
What, How, Why

0개의 댓글