오라클은 10g 부터 REGEXP로 시작하는 함수를 지원하는데,
REGEXP는 Regular Expression, 즉 정규표현식이다.
오라클에서 사용하는 정규표현식 함수 중에 자주 쓰는 함수가
REGEXP_LIKE함수인데, 이에 대해서 자세히 알아보자.
REGEXP_LIKE(srcstr, pattern[,match_option])
※ srcstr : 소스문자열, 검색하고자 하는 값
※ pattern : 비교할 정규표현식 패턴
※ match_option : Match를 시도할 때의 옵션, 대표적으로
'i' : 대소문자를 구분한다.
'c' : 대소문자를 구분하지 않는다. (Default) 가 있다.
그리고 정규식 패턴안에 들어가는 메타문자(검색 알고리즘을 지정하는 연산자)는
※ . : NULL을 제외한 모든 문자와 일치
※ ? : 앞 문자가 없거나 하나 있음.
※ + : 앞 문자가 하나 이상 있음.
※ * : 앞 문자가 0개 이상 있음.
※ | : OR
※ ^ : 문자열 시작 부분과 일치
※ $ : 문자열 끝 부분과 일치
※ [:digit:] : 숫자
※ [] : []에 있는 문자 중 하나를 일치시키려는 패턴을 작성
※ [^] : []에 있는 문자를 제외한 모든 문자를 일치시키려는 리스트 지정하기
※ () : 표현식의 그룹화
등이 있다.
SELECT firstName
FROM contacts
WHERE REGEXP_LIKE (firstName, '^A(*)');