카테고리:

문자열 함수(정규식)

REGEXP_COUNT

문자열에서 패턴이 발생하는 횟수를 반환합니다.

문자열 함수(정규식) 도 참조하십시오.

구문

REGEXP_COUNT( <subject> , <pattern> [ , <position> , <parameters> ] )
Copy

인자

필수:

subject

일치할 주제입니다.

pattern

일치할 패턴입니다.

선택 사항:

position

함수가 일치 항목 검색을 시작하는 문자열 시작 부분의 문자 수입니다.

기본값: 1 (일치 항목 검색은 왼쪽의 첫 번째 문자에서 시작됨)

parameters

일치 항목을 검색하는 데 사용되는 매개 변수를 지정하는 하나 이상의 문자로 된 문자열입니다. 지원되는 값:

c , i , m , e , s

자세한 내용은 정규식에 매개 변수 지정하기 섹션을 참조하십시오.

기본값: c

사용법 노트

데이터 정렬 세부 정보

Arguments with collation specifications are currently not supported.

다음 예는 was 단어의 발생 횟수를 계산합니다. 문자열의 첫 번째 문자에서 일치가 시작됩니다.

select regexp_count('It was the best of times, it was the worst of times', '\\bwas\\b', 1) as "result" from dual;

+--------+
| result |
|--------|
|      2 |
+--------+
Copy

다음 예는 중복 발생을 보여줍니다.

create or replace table overlap (id number, a string);
insert into overlap values (1,',abc,def,ghi,jkl,');
insert into overlap values (2,',abc,,def,,ghi,,jkl,');

select * from overlap;

select id, regexp_count(a,'[[:punct:]][[:alnum:]]+[[:punct:]]', 1, 'i') from overlap;

+----+--------------------------------------------------------------+
| ID | REGEXP_COUNT(A,'[[:PUNCT:]][[:ALNUM:]]+[[:PUNCT:]]', 1, 'I') |
|----+--------------------------------------------------------------|
|  1 |                                                            2 |
|  2 |                                                            4 |
+----+--------------------------------------------------------------+
Copy