비밀번호 정규식 질문드립니다. 채택완료

register_form.skin.php 의 폼 유효성 체크부분의 비밀번호부분을

수정하려고 합니다.

 

비밀번호가

1. 6자 이상

2. 숫자+문자 or 문자+숫자 (둘다 대소문자 관계없음)

 

위의 2가지 조건을 만족하게

정규식을 작성하려고 합니다.

 

Copy
// 비밀번호 6자리 이상

if(f.mb_password.value.length > 0) {

   if(f.mb_password_re.value.length < 6) {

       alert('6자리 이상');

       f.mb_password_re.focus();

       return false;

   }

}

 

// 비밀번호 무조건 숫자+문자 or 문자+숫자

var idReg = /^[a-z0-9A-Z]{6,20}$/;
   if(!f.mb_password.value.match(idReg))
      { 
          alert("비밀번호는 문자, 숫자조합으로 6자리 이상으로 입력해주세요."); 
          f.mb_password.focus();
          return false; 
      }

 

비밀번호 무조건 숫자+문자 or 문자+숫자 이 부분의 정규식이

틀린것 같습니다;;

문자만 6자리 입력해도 가입이 되어버리네요 ㅠ

답변 1개

채택된 답변
+20 포인트

function mycheck(p) {
    chk1 = /^[a-Z\d]{8,12}$/i;  //a-Z와 0-9이외의 문자가 있는지 확인
    chk2 = /[a-Z]/i;  //적어도 한개의 a-Z 확인
    chk3 = /\d/;  //적어도 한개의 0-9 확인
    return chk1.test(p) && chk2.test(p) && chk3.test(p);

alert(mycheck("123456a8"));


구글링 참고 하시면 좋은 예제 많이 나옵니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

근데 a-Z 는 정규식 오류라고 나오는데요!?
저도 a-Z 면 소문자~대문자
전부인걸로 알고있는데 이상하네요;

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인
🐛 버그신고