'javascript 정규식 특수문자'에 해당되는 글 2건

  1. 2013.02.06 javascript 영문, 숫자 혼용만 사용하는 비밀번호 정규식
  2. 2013.01.22 javascript 정규식 필명, 닉네임 형식 체크

javascript 정규식을 이용해서 영문, 숫자 혼용만 사용하는 비밀번호 확인

//=== 영문, 숫자 혼용 확인
// 혼용이면 true, 아니면 false
function rtn_engnum_mix_chk(str)
{
 var chk_num = str.search(/[0-9]/g);
 var chk_eng = str.search(/[a-z]/ig);

 if(chk_num < 0 || chk_eng < 0)
 {
  return false;
 }

 return true;
}


//=== 영문, 숫자 확인
// 영문 또는 숫자이면 true, 아니면 false
function rtn_engnum_chk(str)
{
 for( var i = 0; i <= str.length -1 ; i++ )
 {
  if('a' <= str.charAt(i) && str.charAt(i) <= 'z' || str.charAt(i) >= '0' && str.charAt(i) <= '9'){}
  else
  {
   return false;
  }
 }

 return true;
}

 

// 확인 : 비밀번호
function passwd_chk(passwd1, passwd2)
{
 passwd1 = passwd1.trim().toLowerCase(); // javascript를 이용해서 trim() 구현하기 바로가기
 passwd2 = passwd2.trim().toLowerCase();

 var str = passwd1;

 if(passwd1.length < 6 || passwd1.length > 12)
 {
  alert ("비밀번호는 6~12자의 영문 및 숫자혼용만 사용할 수 있습니다.");
  return false;
 }

 else if(passwd1 != passwd2)
 {
  alert ("비밀번호와 비밀번호 확인이 일치하지 않습니다.");
  return false;
 }

 if(!rtn_engnum_mix_chk(str))
 {
  alert("비밀번호는 숫자와 영문자를 혼용해야 합니다.");
  return false;
 }

 if(!rtn_engnum_chk(str))
 {
  alert ("비밀번호는 영문 및 숫자로 구성되어야 합니다");
  return false;
 }

 return true;
}

 

// 비밀번호변경
function modify_pw_chk(f)
{
 f.passwd.value = f.passwd.value.trim();
 f.passwd1.value = f.passwd1.value.trim();
 f.passwd2.value = f.passwd2.value.trim();


 if(f.passwd.value == '')
 {
  alert("현재 비밀번호를 입력해주세요");
  f.passwd.focus();
  return false;
 }

 if(f.passwd.value.length < 6 || f.passwd.value.length > 12)
 {
  alert ("비밀번호는 6~12자의 영문 및 숫자혼용만 사용할 수 있습니다.");
  f.passwd.focus();
  return false;
 }

 if(!rtn_engnum_mix_chk(f.passwd.value))
 {
  alert("비밀번호는 숫자와 영문자를 혼용해야 합니다.");
  f.passwd.focus();
  return false;
 }

 if(!rtn_engnum_chk(f.passwd.value))
 {
  alert ("비밀번호는 영문 및 숫자로 구성되어야 합니다");
  f.passwd.focus();
  return false;
 }


 if(f.passwd1.value == '')
 {
  alert("새로운 비밀번호를 입력해주세요");
  f.passwd1.focus();
  return false;
 }

 else if(f.passwd2.value == '')
 {
  alert("새로운 비밀번호를 한번 더 입력해주세요");
  f.passwd2.focus();
  return false;
 }

 else if(f.passwd1.value != '' && !passwd_chk(f.passwd1.value, f.passwd2.value))
 {
  return false;
 }

 f.submit();
}

 

사용예>

<form name="f" method="post">

<input type="password" id="passwd" name="passwd" maxlength="12" style="ime-mode:disabled;" title="6~12자의 영문 및 숫자혼용" />
<input type="password" id="passwd2" name="passwd2" maxlength="12" style="ime-mode:disabled;" title="6~12자의 영문 및 숫자혼용" />
<input type="password" id="passwd3" name="passwd3" maxlength="12" style="ime-mode:disabled;" title="6~12자의 영문 및 숫자혼용" />

<a href="javascript:;" onclick="modify_pw_chk(document.f)">비밀번호변경</a>

</form>

Posted by 은둔고수

별명(닉네임) 입력 글자를 확인하는 자바스크립트 정규식으로

한글, 영문, 숫자만 입력할 수 있다.

 

function nick_chk(str)
{
 if(str.length < 2 || str.length > 10) {
   alert("2~10자의 한글, 영문, 숫자만 사용할 수 있습니다.");
   return false;
 }

 var chk = /[0-9]|[a-z]|[A-Z]|[가-힣]/;

 for( var i = 0; i <= str.length -1 ; i++ )
 {
  if(chk.test(str.charAt(i)))
  {
  }

  else
  {
   alert("2~10자의 한글, 영문, 숫자만 사용할 수 있습니다.");
   return false;
  }
 }

 return true;
}

 

<input type="text" id="nick" name="nick" maxlength="10" onblur="nick_chk(this.value);" />

 

Posted by 은둔고수