[오라클] oracle | 오라클 정규표현식(regular expression) | 정규식
1. REGEXP_COUNT(source_char, pattern, position, match_param)
: 검사 대상에서 패턴이 발생한 횟수를 반환
- source_char : 검사 대상
- pattern : 패턴
표현 | 의미 |
[] | 패턴 목록 |
^ | [ ] 안에서, 제외(not) |
a ~ z, A~Z | 알파벳 |
- | [ ] 안에서, 범위 |
0 ~ 9 | 숫자 |
| | 또는 |
- position : 검사 시작 위치(1부터 시작, 0 아님)
- match_param : 검사 옵션
표현 | 의미 |
i | 대소문자 구분 안함(case-insensitive matching) |
c | 대소문자 구분(case-sensitive matching) |
[Oracle 11g] 1. REGEXP_COUNT 테스트 예제)
WITH TEST AS (
SELECT '1' AS NUM, ') 0 1254854 02' AS SAMPLE FROM DUAL UNION
SELECT '2' AS NUM, '( 123548652154' AS SAMPLE FROM DUAL UNION
SELECT '3' AS NUM, '568546\1234584' AS SAMPLE FROM DUAL UNION
SELECT '4' AS NUM, 'A*54TES456215S' AS SAMPLE FROM DUAL UNION
SELECT '5' AS NUM, '95125485454215' AS SAMPLE FROM DUAL UNION
SELECT '6' AS NUM, 'ASDFE456210000' AS SAMPLE FROM DUAL
)
SELECT A.NUM
, A.SAMPLE
, REGEXP_COUNT(A.SAMPLE,'[^a-z|^0-9]',1,'i') AS RESULT
FROM TEST A
ORDER BY NUM
;
* [^a-z|^0-9] : 알파벳 또는 숫자가 아닌 문자 찾기
* 1 : 처음부터 찾기
* i : 대소문자 구분 안 함
1. REGEXP_COUNT 테스트 결과)
2021.07.13 신규
'오라클(Oracle) > 오라클 메모' 카테고리의 다른 글
[오라클] oracle | EXISTS (0) | 2021.12.02 |
---|---|
[오라클] oracle | TO_DATE (0) | 2021.11.10 |
[오라클] oracle | 오라클 버전 확인 (0) | 2021.07.06 |
[오라클] oracle | REPLACE (0) | 2021.07.06 |
댓글