re.capture
re.capture(stringText, regex)
설명
인수에 제공된 정규 표현식 패턴을 사용하여 문자열에서 데이터를 캡처(추출)합니다.
이 함수에는 두 개의 인수가 사용됩니다.
stringText: 검색할 원래 문자열입니다.regex: 검색할 패턴을 나타내는 정규 표현식입니다.
정규 표현식은 0 또는 1 캡처 그룹을 괄호로 포함할 수 있습니다. 정규 표현식에 0 캡처 그룹이 포함된 경우 함수가 첫 번째 전체 일치 하위 문자열을 반환합니다. 정규 표현식에 1 캡처 그룹이 포함된 경우 캡처 그룹의 첫 번째 일치 하위 문자열을 반환합니다. 캡처 그룹을 2개 이상 정의하면 컴파일 오류가 반환됩니다.
매개변수 데이터 유형
STRING, STRING
반환 유형
STRING
코드 샘플
예 1
이 예시에서 $e.principal.hostname에 'aaa1bbaa2'가 포함되면 함수가 첫 번째 인스턴스를 반환하므로 다음이 True입니다. 이 예시에는 캡처 그룹이 없습니다.
"aaa1" = re.capture($e.principal.hostname, "a+[1-9]")
예 2
이 예시에서는 이메일에서 @ 기호 다음에 있는 모든 내용을 캡처합니다. $e.network.email.from 필드가 test@google.com이면 예시에서 google.com을 반환합니다. 다음 예시에는 캡처 그룹 하나가 포함되어 있습니다.
"google.com" = re.capture($e.network.email.from , "@(.*)")
예 3
정규 표현식이 텍스트의 하위 문자열과 일치하지 않으면 함수는 빈 문자열을 반환합니다. 빈 문자열을 제외하여 일치하는 항목이 없는 이벤트를 생략할 수 있습니다. 이는 re.capture()를 불일치로 사용하는 경우에 특히 중요합니다.
// Exclude the empty string to omit events where no match occurs.
"" != re.capture($e.network.email.from , "@(.*)")
// Exclude a specific string with an inequality.
"google.com" != re.capture($e.network.email.from , "@(.*)")