Oracle REGEXP_LIKE

김성일·2021년 7월 25일
1

오라클은 10g 부터 REGEXP로 시작하는 함수를 지원하는데,
REGEXP는 Regular Expression, 즉 정규표현식이다.

오라클에서 사용하는 정규표현식 함수 중에 자주 쓰는 함수가
REGEXP_LIKE함수인데, 이에 대해서 자세히 알아보자.

REGEXP_LIKE

REGEXP_LIKE(srcstr, pattern[,match_option])

※ srcstr : 소스문자열, 검색하고자 하는 값
※ pattern : 비교할 정규표현식 패턴
※ match_option : Match를 시도할 때의 옵션, 대표적으로

'i' : 대소문자를 구분한다.
'c' : 대소문자를 구분하지 않는다. (Default) 가 있다.

그리고 정규식 패턴안에 들어가는 메타문자(검색 알고리즘을 지정하는 연산자)는

※ . : NULL을 제외한 모든 문자와 일치
※ ? : 앞 문자가 없거나 하나 있음.
※ + : 앞 문자가 하나 이상 있음.
※ * : 앞 문자가 0개 이상 있음.
※ | : OR
※ ^ : 문자열 시작 부분과 일치
※ $ : 문자열 끝 부분과 일치
※ [:digit:] : 숫자
※ [] : []에 있는 문자 중 하나를 일치시키려는 패턴을 작성
※ [^] : []에 있는 문자를 제외한 모든 문자를 일치시키려는 리스트 지정하기
※ () : 표현식의 그룹화
등이 있다.

쿼리 예시) 이름 중 첫글자가 A로 시작하는 것

SELECT firstName
FROM contacts
WHERE REGEXP_LIKE (firstName, '^A(*)');
profile
Hongik Univ. Computer

0개의 댓글