JavaScript 정규 표현식

이한형·2021년 11월 22일
0

정규 표현식

정규 표현식은 문자열에 나타나는 특정 문자 조합과 대응시키기 위해 사용되는 패턴입니다.
즉 정규 표현식을 이용하여 특정 패턴에 매칭되는 문자열을 찾아낼 수 있습니다.

이메일 검증

예를 들어 example@gmail.com 이라는 문자열은 @을 기준으로 앞 뒤로 문자열이 있고 또 뒤의 문자열에서 .을 기준으로 앞뒤로 문자열이 있는 것을 확인할 수 있습니다.
해당 패턴을 체크하는 방법은 다음과 같습니다.

const email = "example@gmail.com"

const regExp = /^([a-zA-Z0-9_\-\.]+)@([a-zA-Z0-9_\-\.]+)\.([a-zA-Z]{2,5})$/i;

console.log(regExp.test(email))

위의 코드를 실행시켜보면 true가 출력되는 것을 확인할 수 있습니다.

정규 표현식 사용법

1.매칭 패턴

패턴의미
a-zA-Z알파벳
ㄱ-ㅎ가-힣한글
0-9숫자
.모든 문자열
\d숫자
\D숫자가 아닌 것
\w알파벳, 숫자, 언더바
\W\w가 아닌 것
\s공백
\S공백이 아닌 것

2.검색 패턴

패턴의미
[]괄호안의 문자들 중 하나
[^문자]괄호안의 문자를 제외한 것
^문자열특정 문자열로 시작
문자열$특정 문자열로 끝남
()그룹 검색 및 분류
(?: 패턴)그룹 검색
\b단어의 처음, 끝
\B단어의 처음, 끝이 아님
\s공백
\S공백이 아닌 것

3.수량 패턴

패턴의미
?최대 한번
*없거나 있음 여러개 가능
+최소 한개
{n}n개
{Min,}최소 Min개 이상
{Min, Max}최소 Min개 이상 Max개 이하

4.정규 표현식 플래그

패턴의미
g모든 문자 검색
i대소문자 구분 안함
m여러 행의 문자열에 대해 검색

위의 여러가지 패턴을 이용해서 다양한 정규 표현식을 생성할 수 있습니다.
위의 예제 이메일 뿐만 아니라, 카드 번호, 핸드폰 번호 등 여러가지로 활용 가능합니다

profile
풀스택 개발자를 지향하는 개발자

0개의 댓글