정규표현식

Hong·2022년 2월 10일
0

정규표현식이란?

  • 정규식(正規式)은 특정한 규칙을 가진 문자열의 집합을 표현하는 데 사용하는 형식 언어이다.
  • 정규 표현식은 많은 텍스트 편집기와 프로그래밍 언어에서 문자열의 검색과 치환을 위해 지원하고 있다.
출처 : 위키백과

1. 확장문자

  • s : 공백 문자(스페이스, 탭, 폼 피드, 라인 피드)
  • b : 단어의 경계
  • B 이를 제외한 모든 문자 매칭
  • d : 숫자
  • D : 숫자가 아닌 문자 [^0-9] 와 동일
  • w : 알파벳, 숫자로 된 문자, 밑줄 기호(_) [A-Za-z0-9]
  • W : w의 반대 문자 [^a-za-z0-9]
  • 특수문자 : 특수문자 자체를 의미 예) + (+ 기호 자체)

2. 특수문자

  • * : 0회 이상 반복
  • + : 1회 이상 반복
  • ? : 0 또는 1개의 문자 매칭
  • . : 정확히 1개 문자 매칭

3. 플래그

  • g : 전역매칭
  • i : 대소문자 무시
  • m : 여러 줄 매칭

4. 기타

  • () : 괄호로 묶인 패턴은 매칭된 다음, 그 부분을 기억한다.
  • | : or
  • {} : 반복 횟수

간단한 정규표현식

const re = /a/ --a 가 있는 문자열
const re = /a/i --a 가 있는 문자열, 대소문자 구분 안함
const re = /apple/ -- apple가 있는 문자열
const re = /[a-z]/ -- a~z 사이의 모든 문자
const re = /[a-zA-Z0-9]/ -- a~z, A~Z 0~9 사이의 모든 문자
const re = /[a-z]|[0-9]/ -- a~z 혹은 0~9사이의 문자
const re = /a|b|c/ -- a 혹은 b 혹은 c인 문자
const re = /[^a-z]/ -- a~z까지의 문자가 아닌 문자("^" 부정)
const re = /^[a-z]/ -- 문자의 처음이 a~z로 시작되는 문장
const re = /[a-z]$/ -- 문자가 a~z로 끝남


상용 정규표현식

  • 특수문자 체크 정규식
    const regExp = /[{}[]\/?.,;:|)*~`!^-_+<>@#$%&\\=(\'\"]/g;
  • 모든 공백 체크 정규식
    const regExp = /\s/g;
  • 숫자만 체크 정규식
    const regExp = /[0-9]/g;
  • 이메일 체크 정규식
    const regExp = /^0-9a-zA-Z@0-9a-zA-Z.[a-zA-Z]{2,3}$/i;
  • 핸드폰번호 정규식
    const regExp = /^\d{3}-\d{3,4}-\d{4}$/;
  • 일반 전화번호 정규식
    const regExp = /^\d{2,3}-\d{3,4}-\d{4}$/;
  • 아이디나 비밀번호 정규식
    const regExp = /^[a-z0-9_]{4,20}$/;
  • 휴대폰번호 체크 정규식
    const regExp = /^01([0|1|6|7|8|9]?)-?([0-9]{3,4})-?([0-9]{4})$/;
profile
코딩 배우기

0개의 댓글