Regular Expression (정규표현식)

  • description : Javascript로 정규식 사용하기
  • author : eleven
  • email : jskim@repia.com
  • lastupdate : 2020-04-28

Case Study

이메일 정규표현식
var emailRegExp = /^[A-Za-z0-9_\.\-]+@[A-Za-z0-9\-]+\.[A-Za-z0-9\-]+/;


휴대폰번호 정규표현식
var phoneRegExp = /^\d{3}-\d{3,4}-\d{4}$/;


비밀번호 정규표현식
//특수문자 / 문자 / 숫자 포함 형태의 8~15자리 이내의 비밀번호 정규식
var pwRegExp1 = /^.*(?=^.{8,15}$)(?=.*\d)(?=.*[a-zA-Z])(?=.*[!@#$%^&+=]).*$/;
 
//숫자와 문자 포함 형태의 6~12자리 이내의 비밀번호 정규식
var pwRegExp2 = /^[A-Za-z0-9]{6,12}$/;


사용 예시
var expText = /^[A-Za-z0-9_\.\-]+@[A-Za-z0-9\-]+\.[A-Za-z0-9\-]+/;
var email = $('#email').val();
 
if(expText.test(email) == false)
{
   alert("이메일 형식이 올바르지 않습니다. 다시 입력해주세요.");
   return false;
}


replace
var str = 'apple apple apple';
var result = str.replace('apple', 'orange');
=> orange apple apple

replace는 처음 매칭되는 1번만 수행됨

replace 정규식 사용하기(java의 replaceAll)
var str = 'apple apple apple';
var result = str.replace(/apple/g, 'orange');
=> orange orange orange
대소문자 구분은 /문자열/gi


그럼 특수 기호('.', '^', '(', ')') 는?
var str = 'apple.apple.apple';
var result = str.replace(/\./g, ' ');
=> apple apple apple