정규표현식

5BRack·2022년 10월 11일

백엔드 로드맵

목록 보기
16/28

정규표현식(regex)

  • 정규 표현식은 데이터 내에서 광범위하게 또는 세부적으로 일치하는 패턴을 찾아내는 특정 문자 시퀸스 이다.
  • Meta 데이터이다.

    Meta 메타데이터 - 데이터를 위한 데이터, 데이터를 표현하기 위한 데이터이다.

와일드 카드

  • . : 단일 문자와 일치 ex) 1.은 1O와 1A와 일치
  • ? : 앞의 문자와 0회 또는 1회 일치 ex) 1O? 는 1,1O과 일치
  • + : 앞의 문자와 1회 이상 일치 ex) 1O+ 는 1O,1OO와 일치
  • * : 앞의 문자와 0회 이상 일치 ex) 1O* 는 1,1O과 일치
  • | : OR일치를 만든다. ex) 1|10은 1,10과 일치

앵커

  • ^ : 지정된 문자열로 시작
  • $ : 지정된 문자열로 종료

그룹

  • (,) : 문자열에 정확하게 일치하는 순서로 포함된 문자를 반환 ex) (10)은 10,101,1011 와 일치
  • [,] : 문자열의 순서에 상관없이 일치하는 문자가 포함되어 있으면 반환 ex) [10]은 012,120,210과 일치
  • - : 대괄호 안의 문자범위를 만들면 문자열에서 모두 일치 ex) [0~9]는 0~9중의 모든 숫자와 일치

이스케이프 문자

  • \(역슬레쉬) : 인접 문자를 정규식 메타 문자가 아님 문자 그대로 해석 ex) 216.239.32.34는 216.239.32.34와 일치합니다.

문자 클래스

  • \d : 숫자
  • \D : 숫자가 아님
  • \s : 공백
  • \S : 공백이 아님
  • \w : 단어문자
  • \W : 단어문자 아님

비밀번호

특수문자, 문자, 숫자 포함형태의 8~15 자리의 암호 정규식
var regex = /^.(?=^.{8,15}$)(?=.\d)(?=.[a-zA-Z])(?=.[!@#$%^&+=]).*$/;

0개의 댓글