목차

Search

  1. 서문
  2. 변환 언어
  3. 상수
  4. 연산자
  5. 변수
  6. 날짜
  7. 함수
  8. 사용자 지정 함수 작성
  9. 사용자 지정 함수 API 참조

변환 언어 참조

변환 언어 참조

REG_EXTRACT

REG_EXTRACT

입력 값 내에서 정규식의 하위 패턴을 추출합니다. 예를 들어 전체 이름에 대한 정규식 패턴에서 이름 또는 성을 추출할 수 있습니다.
문자열의 문자 패턴을 다른 문자 패턴으로 바꾸려면 REG_REPLACE 함수를 사용합니다.

구문

REG_EXTRACT(
subject
,
'pattern', subPatternNum
, match_from_start
)
다음 테이블에는 이 명령의 인수가 설명되어 있습니다.
인수
필수/
선택 사항
설명
subject
필수
문자열 데이터 유형. 정규식 패턴과 비교할 값을 전달합니다.
pattern
필수
문자열 데이터 유형. 일치시킬 정규식 패턴입니다. perl 호환 정규식 구문을 사용해야 합니다. 패턴은 작은따옴표로 묶습니다. 각 하위 패턴은 괄호로 묶습니다.
subPatternNum
선택 사항
정수 값. 일치시킬 정규식의 하위 패턴 번호입니다. 하위 패턴 번호는 다음 지침에 따라 결정됩니다.
  • 값 없음 또는 1. 첫 번째 정규식 하위 패턴이 추출됩니다.
  • 2. 두 번째 정규식 하위 패턴이 추출됩니다.
  • n.
    n
    번째 정규식 하위 패턴이 추출됩니다.
기본값은 1입니다.
match_from_start
선택 사항
숫자 값. 문자열의 시작에서 일치가 발견된 경우 하위 문자열이 반환됩니다. 시작 값의 일치는 다음 지침에 따라 결정됩니다.
  • 0. 패턴을 시작 인덱스 또는 모든 인덱스의 대상 문자열과 일치시킵니다.
  • 0이 아님. 패턴을 시작 인덱스의 대상 문자열과 일치시킵니다.

perl 호환 정규식 구문 사용

REG_EXTRACT, REG_MATCH 및 REG_REPLACE 함수에는 perl 호환 정규식 구문을 사용해야 합니다.
다음 테이블에는 perl 호환 정규식 구문 지침이 제공되어 있습니다.
구문
설명
. (마침표)
문자 하나를 일치시킵니다.
[a-z]
문자의 인스턴스 하나를 소문자로 일치시킵니다. 예를 들어 [a-z]는 ab를 일치시킵니다. 문자를 대문자로 일치시키려면 [A-Z]를 사용합니다.
\d
모든 숫자(0-9)의 인스턴스 하나를 일치시킵니다.
\s
공백 문자를 일치시킵니다.
\w
밑줄(_)을 포함하여 영숫자 하나를 일치시킵니다.
()
식을 그룹화합니다. 예를 들어 (\d-\d-\d\d)에서 괄호는 12-34와 같이 뒤에 하이픈과 2자리 숫자가 오는 모든 2자리 숫자를 찾는 식인 \d\d-\d\d를 그룹화합니다.
{}
문자 수를 일치시킵니다. 예를 들어 \d{3}는 650 또는 510과 같은 3자리 숫자를 일치시킵니다. 또는 [a-z]{2}는 CA 또는 NY와 같은 2자리 문자를 일치시킵니다.
?
앞에 있는 문자 또는 문자 그룹을 0회 또는 1회 일치시킵니다. 예를 들어 \d{3}(-{d{4})?는 모든 3자리 숫자를 일치시킵니다. 이 숫자 뒤에는 하이픈과 4자리 숫자가 올 수 있습니다.
*(별표)
별표 뒤에 오는 값의 인스턴스(0 이상)를 일치시킵니다. 예를 들어 *0은 0 앞에 있는 모든 값입니다.
+
더하기 기호 뒤에 오는 값의 인스턴스(1 이상)를 일치시킵니다. 예를 들어 \w+는 영숫자 뒤에 오는 모든 값입니다.
예를 들어 다음 정규식은 5자리 미국 우편 번호(예: 93930)와 9자리 우편 번호(예: 93930-5407)를 찾습니다.
\d{5}(-\d{4})?
\d{5}는 93930과 같은 모든 5자리 숫자를 나타냅니다. -\d{4}를 감싸는 괄호는 식에서 이 세그먼트를 그룹화합니다. 하이픈은 93930-5407에서와 같이 9자리 우편 번호의 하이픈을 나타냅니다. \d{4}는 5407과 같은 4자리 숫자를 나타냅니다. 물음표는 하이픈과 마지막 4자리가 선택 사항이거나 한 번 나타날 수 있다는 것을 명시합니다.

COBOL 구문을 perl 호환 정규식 구문으로 변환

COBOL 구문에 익숙한 사용자는 다음 정보를 사용하여 perl 호환 정규식을 작성할 수 있습니다.
다음 테이블에는 COBOL 구문 및 해당하는 perl 구문에 대한 예가 표시되어 있습니다.
COBOL 구문
perl 구문
설명
9
\d
모든 숫자(0-9)의 인스턴스 하나를 일치시킵니다.
9999
\d\d\d\d
또는
\d{4}
0-9의 4자리를 일치시킵니다(예: 1234 또는 5936).
x
[a-z]
문자의 인스턴스 하나를 일치시킵니다.
9xx9
\d[a-z][a-z]\d
1ab2에서와 같이 2자리 문자와 다른 숫자가 뒤에 있는 모든 숫자를 일치시킵니다.

SQL 구문을 perl 호환 정규식 구문으로 변환

SQL 구문에 익숙한 사용자는 다음 정보를 사용하여 perl 호환 정규식을 작성할 수 있습니다.
다음 테이블에는 SQL 구문 및 해당하는 perl 구문에 대한 예가 표시되어 있습니다.
SQL 구문
perl 구문
설명
%
. *
모든 문자열을 일치시킵니다.
A%
A.*
Area와 같이 앞에 문자 "A"가 있는 모든 문자열을 일치시킵니다.
_
. (마침표)
문자 하나를 일치시킵니다.
A_
A.
AZ와 같이 “A”로 시작하는 모든 2자리 문자를 일치시킵니다.

반환 값

입력 값의 일부인
n
번째 하위 패턴의 값이 반환됩니다.
n
번째 하위 패턴은 subPatternNum에 지정한 값에 기반합니다.
입력이 Null 값이거나 패턴이 Null인 경우 NULL이 반환됩니다.

REG_EXTRACT를 식에 사용하여 이름, 중간 이름 및 성을 일치시키는 정규식에서 중간 이름을 추출할 수 있습니다. 예를 들어 다음 식은 정규식의 중간 이름을 반환합니다.
REG_EXTRACT( Employee_Name, '(\w+)\s+(\w+)\s+(\w+)',2)
Employee_Name
Return Value
Stephen Graham Smith
Graham
Juan Carlos Fernando
Carlos