정규식
설명
REGEX
은 에 대해 전체 문자열 매칭을 수행하는 행 함수입니다. TEXT
값을 정규식과 함께 사용하고 정규식의 첫 번째 캡처링 그룹과 일치하는 문자열 부분을 반환합니다.구문
REGEX
(string_expression
,"regex_matching_pattern
")반환 값
매칭 항목을 반환합니다.
TEXT
정규식의 첫 번째 캡처링 그룹 값입니다. 일치하는 항목이 없으면 을 반환합니다. NULL
. 입력 매개변수
- string_expression
- 필수 콘텐츠 유형의 필드명 또는 표현식입니다.TEXT(또는 리터럴 문자열)
- regex_matching_pattern
- 필수 콘텐츠 Java 프로그래밍 언어의 정규식 패턴 매칭 구문을 기반으로 하는 정규식 패턴입니다. NULL이 아닌 값을 반환하려면 정규식 패턴이 전체TEXT값
정규식 구문
정규식 매칭 패턴을 정의하는 데 사용되는 구문에 대한 자세한 내용은 정규식 참조를 확인하십시오.
캡처 그룹 및 비 캡처 그룹
정규식에서 하위 패턴을 괄호로 묶어 그룹을 지정합니다. 패턴에는 둘 이상의 그룹이 있을 수 있으며 그룹은 중첩될 수 있습니다. 그룹은 첫 번째 여는 괄호부터 시작하여 왼쪽에서 오른쪽으로 1-
n
으로 번호가 매겨집니다. 항상 전체 매칭을 포함하는 암시적 그룹 0이 있습니다. 예를 들어, 패턴은 다음과 같습니다. (a(b*))+(c)
에는 다음 세 가지 그룹이 포함됩니다.
group 1: (a(b*)) group 2: (b*) group 3: (c)
그룹 캡처
기본적으로 그룹은 매칭 항목을 생성하는 텍스트를
캡처하며
가장 최근의 매칭 항목만 캡처합니다. 다음 REGEX
이 함수는 정규식의 첫 번째 캡처링 그룹과 일치하는 문자열을 반환합니다. 예를 들어, 위 표현식의 입력 문자열이 abc
, 전체 REGEX
함수의 매칭 대상: abc
, 그룹 1의 결과만 반환합니다. ab
. 비수집 그룹
경우에 따라 괄호를 사용하여 하위 패턴을 그룹화하지만 텍스트는 캡처하지 않을 수 있습니다. 비포착 그룹은 다음으로 시작합니다.
(?:
(여는 괄호 뒤에 물음표 및 콜론 포함) 예를 들어, h(?:a|i|o)t
매칭 hat
또는 hit
또는 hot
을(를) 캡처하지 않습니다. a
, i
, 또는 o
하위 표현식에서 가져옵니다. 예
가능한 모든 이메일 주소를
사용자명
@provider
패턴과 매칭하십시오.도메인이지만
다음이메일
필드에서 이메일 주소의제공자
부분만 반환합니다.REGEX([email], "^[a-zA-Z0-9._%+-]+@
([a-zA-Z0-9._-]+)
\.[a-zA-Z]{2,4}$")웹 로그의 요청 라인을 매칭합니다. 여기서 값은 다음 형식입니다.
요청된 HTML 페이지명만 반환합니다.GET /some_page.html HTTP/1.1
REGEX([weblog_request_line], "GET\s/
([a-zA-Z0-9._%-]+\.[html])
\sHTTP/[0-9.]+")에서 인치 부분을 추출합니다.
height
필드에서 예시 값은 다음과 같습니다. 6'2"
, 5'11"
(리터럴 따옴표를 큰따옴표로 이스케이프 처리한 것을 확인할 수 있습니다.)REGEX([height], "\d\'(\d)+""")
의 모든 내용을 추출합니다.
device
값이 다음 중 하나인 경우 필드 iPod
, iPad
, 또는 iPhone
:REGEX([device], "(iP[ao]d|iPhone)")