정규표현식

  • 문자열의 패턴을 확인할 때 사용하는 표현식
  • 아이디, 비밀번호 등의 규칙을 정할 때 사용.
참고사이트 : www.regex101.com
표현식 설명
abc 문자열 abc와 일치하는 부분이 있는지 확인
[abc] a 또는 b 또는 c가 있는지 확인
[a-z] 알파벳 소문자 중에 하나가 있는지 확인
[a-zA-Z] 알파벳이 있는지 확인
[ㄱ-힣] 한글이 있는지 확인
^[abc]$ a로 시작해서 c로 끝나는 것을 확인
{3} 3개
{3,} 3개 이상
\D 숫자를 제외하고 확인
\W 알파벳, 숫자, _를 제외하고 확인
\S 공백을 제외하고 확인
+ 1번 이상
. 한 글자의 공간 ( ^...$ : 세글자가 올 수 있는 공간. ^..$ : 두 글자가 올수 있는 공간)
(abc) abc를 하나의 그룹으로 묶어서 확인
a|b a 또는 b
? 0번, 또는 1번
* 0번 이상
\s 공백을 확인
\w 알파벳, 숫자, _를 확인
\d 숫자를 확인
{3,4} 3개 이상 4개 이하
{} 횟수
$
[^abc] abc가 아닌 것을 확인
[0-9] 숫자가 있는지 확인
[A-Z] 알파벳 대문자 중에 하나가 있는지 확인
[a-c] [abc]와 같음 - a 또는 b 또는 c가 있는지 확인
네이버 회원가입 아이디 정규표현식
/ ^[a-z0-9_-]{5,20}$ /
'5~20자의 영문 소문자, 숫자와 특수기호(_), (-)만 사용 가능합니다.'

 

 

정규표현식 중요 메서드

  • test(문자열) : 정규표현식과 일치하면 true, 일치하지 않으면 false를 반환.
      ex) regex.test(str) str이 regex에 맞는 문자열인지 확인.
var phoneReg =  /^010(-\d{4}){2}$/;

var num1 = '010-1234-5678'
console.log(num1 + " : " + phoneReg.test(num1));
var num2 = '01012345678';
console.log(num2 + " : " + phoneReg.test(num2));
var num3 = '010-abcd-abcd';
console.log(num3 + " : " + phoneReg.test(num3));
var num4 = '010-1234-678';
console.log(num4 + " : " + phoneReg.test(num4));
  • 문자열.math(정규표현식) : 정규표현식과 일치하는 문자열을 배열로 만들어 반환.

플래그정규표현식 : 정규표현식의 / ← 다음에 써준다.

  • i : 대소문자 구별 없이 비교. test() 메서드를 이용할 때 사용
  • g : 문자열 전체와 비교
  • m : 여러 행의 문자열을 비교

 

 

참고하면 좋은 영상!

https://www.youtube.com/watch?v=t3M6toIflyQ

'JavaScript' 카테고리의 다른 글

이클립스 js 파일 흑백화 되었을 때  (0) 2021.07.23