본문 바로가기

DB

[Oracle]Regular Expressions(정규 표현식)

REGEXP_INSTR : 정규 표현식 패턴으로 문자열을 검색할 때 사용

 

 

Ex.1) table1column1에서 첫 번째 자리의 숫자인 데이터를 찾을 때

SELECT column1, column2, ..., columnN FROM table1 WHERE REGEXP_INSTR(column1, '[0-9\]') = 1

 

REGEXP_INSTR(column1, '[0-9\0]') = 1 --(자릿수)

만약 2자리 수가 숫자인지 데이터를 조회한다면 자릿수를 2를 변경.

단 위에 조건은 데이터 중 처음 숫자가 나온 자릿수만 반환함.

예를 들어 데이터가 "ABC123"일 때 REGEXP_INSTR(column1, '[0-9\0]') = 4 라고 하면 조회되지만,

REGEXP_INSTR(column1, '[0-9\0]') = 4 라고 조건을 주면 조회되지 않음.

 

 

Metacharacters Supported in Regular Expressions

[Reference] https://docs.oracle.com/cd/B12037_01/appdev.101/b10795/adfns_re.htm#1006826