정규 표현식(REGEXP) 은 문자 패턴을 정의해 검색·치환·추출 하는 기능입니다. LIKE 보다 훨씬 정밀한 패턴 매칭을 하며, SQLD에 비교적 최근 추가된 단원입니다. 함수 이름과 메타문자 의미 를 정확히 아는지 묻습니다.
이 단원, 시험에서 어디에 나오나
- 제2과목 「SQL 기본 및 활용」 단원입니다.
- REGEXP 함수 구분 과 메타문자(앵커·부정) 의미 가 출제 포인트입니다.
① REGEXP 함수 5종
그림 1. 일반 함수(LIKE·REPLACE·SUBSTR·INSTR·COUNT)에 REGEXP_ 접두어를 붙인 형태로, 패턴을 정규식으로 받습니다. (자작 도식)
| 함수 | 역할 |
|---|---|
| REGEXP_LIKE | 패턴 매칭 여부(주로 WHERE) |
| REGEXP_REPLACE | 패턴을 찾아 치환 |
| REGEXP_SUBSTR | 패턴에 맞는 부분 추출 |
| REGEXP_INSTR | 패턴이 나타난 위치 |
| REGEXP_COUNT | 패턴이 나타난 횟수 |
② 메타문자 — 패턴의 규칙
그림 2. ^·$(앵커), .(문자 하나), * + ?(반복), [](집합), [^…](부정). (자작 도식)
| 메타문자 | 의미 |
|---|---|
^ | 문자열 시작 앵커 |
$ | 문자열 끝 앵커 |
. | 아무 문자 1개 |
* + ? | 0회+ / 1회+ / 0~1회 |
[abc] | a·b·c 중 하나 |
[^abc] | a·b·c 가 아닌 것(부정) |
{2,4} | 2~4회 반복 |
자주 틀리는 함정
- 앵커 없으면 부분 일치 —
^·$가 없으면 문자열 일부만 맞아도 참. 전체 일치를 원하면^패턴$. ^의 두 가지 의미 —^abc(시작 앵커) vs[^abc](집합 안의 부정). 위치로 구분.- LIKE와 혼동 —
LIKE의%(임의 문자열)·_(1글자)와 정규식의.·*는 다릅니다.
한 장 정리 (암기 카드)
- 함수:
REGEXP_+ LIKE·REPLACE·SUBSTR·INSTR·COUNT. - 앵커:
^(시작)·$(끝) — 없으면 부분 일치. .(문자 1개)·*(0+)·+(1+)·?(0~1)·[](집합)·[^ ](부정)·{n,m}(반복).- LIKE(
% _)와 정규식(. *)은 다른 표기.
참고 출처
- 시험 과목·출제기준: 한국데이터산업진흥원(KDATA) 데이터자격검정 (2026년 7월 확인)
- REGEXP 함수·메타문자는 오라클·표준 정규식에 근거하며, 본문 설명·예시·도식은 자작입니다.