groups()
문자열에서 정규표현식의 캡처 그룹에 일치하는 항목을 추출하여 배열로 반환합니다.
문법
groups(STR_EXPR, REGEX_PATTERN)
매개변수
STR_EXPR- 추출 대상 문자열 또는 식.
REGEX_PATTERN- 캡처 그룹을 포함한 정규표현식 문자열. 괄호
()로 묶인 부분이 캡처 그룹입니다.
설명
groups() 함수는 STR_EXPR을 문자열로 변환한 뒤 REGEX_PATTERN을 반복 매칭하여, 모든 일치 항목의 캡처 그룹 값을 순서대로 담은 배열을 반환합니다. 일치하는 항목이 없으면 null을 반환합니다. 인수가 null이면 null을 반환합니다.
그룹 인덱스는 1부터 시작합니다. 전체 일치(group(0))는 포함되지 않고 캡처 그룹만 추출합니다.
오류 코드
해당 사항 없음
사용 예
이 사용 예에서 조회하는 WEB_APACHE_SAMPLE 테이블을 준비하려면 쿼리 실습용 데이터를 참고하세요.
-
URI에서 경로 세그먼트 추출
table limit=5 WEB_APACHE_SAMPLE | eval result = groups(uri, "/([^/]+)") | fields uri, result | # result: URI의 각 경로 세그먼트를 담은 배열 -
User-Agent에서 브라우저 이름과 버전 추출
table limit=5 WEB_APACHE_SAMPLE | eval result = groups(agent, "(\\w+)/([\\.\\d]+)") | fields agent, result | # result: 브라우저 이름과 버전 문자열을 담은 배열 -
NULL 입력
json "{'val': null}" | eval result = groups(val, "([a-z]+)") | # result: null
호환성
groups() 함수는 소나 4.0 이전 버전부터 제공되었습니다.