Regular Expression
정규표현식
정규표현식(Regular Expression)은 문자열에 나타나는 특정 패턴을 검사하기 위한 식이다. 식을 정확하게 작성하면 간단한 프로그래밍 코드만으로 복잡한 패턴의 문자열을 검사할 수 있다.
주로 검사하는 항목들은 다음과 같다.
아이디
비밀번호
이메일
전화번호
주소
우편번호
카드번호
IP주소
홈페이지 주소
이밖에도 원하는 항목들을 식을 만들어 검사할 수 있으며, 홈페이지에서는 대부분의 입력창 검사를 정규표현식으로 하므로 언어 종류와 상관없이 공용으로 사용할 수 있는 정규표현식을 배우는 것이 좋다.
참고 사이트
정규표현식을 배울 때 유용한 사이트들은 다음과 같다.
시각화 사이트 : https://regexper.com/
패턴 탐색 사이트 : https://regexr.com/
주요 정규표현식 기호
정규표현식에 사용되는 기호들은 다음과 같다.
시작과 종료
기호
설명
^
검사식의 시작지점
$
검사식의 종료지점
글자 표시
기호
설명
abc
abc
라는 문자열이 등장한다
[abc]
a
, b
, c
중 하나의 글자가 등장한다
[a-c]
a부터 c
사이의 글자가 하나 등장한다
[^abc]
a
, b
, c
를 제외한 하나의 글자가 등장한다
(ab|bc)
ab
또는 bc
중 하나의 글자가 등장한다(OR)
횟수 표시
기호
설명
a{5}
a
가 5번
나온다
a{5,}
a
가 5번
이상 나온다
a{5,7}
a
가 5번
이상 7번
이하 나온다
(hello){5}
hello
가 5번
나온다(괄호로 묶어야 한다)
(hello|hi){5}
hello
또는 hi
가 5번
나온다
[a-z]+
a
부터 z
사이 중 하나의 글자가 1번 이상
나온다
[a-z]{1,}
a
부터 z
사이 중 하나의 글자가 1번 이상
나온다
[a-z]*
a
부터 z
사이 중 하나의 글자가 0번 이상
나온다
[a-z]?
a
부터 z
사이 중 하나의 글자가 0번
또는 1번
나온다
특수표시
기호
설명
\d
digit. [0-9]와 같다
\w
word. [A-Za-z0-9-_]와 같다.
\s
whitespace. 공백을 의미한다.
.
any character. 아무 글자나 1개를 의미한다.
정규표현식 예시
휴대 전화번호 - 1
휴대전화번호 - 2
휴대전화번호 - 3
휴대전화번호 - 4
()를 이용하여 복잡한 식을 하나의 그룹으로 표현한 뒤 반복하였다.
Last updated