문자열 함수 (DataStage)
문자열을 조작하려면 문자열 함수를 사용하십시오.
다음 함수는 표현식 편집기의 문자열 카테고리에 있습니다. 대괄호는 인수가 선택사항임을 표시합니다. 예제는 함수가 Transformer 스테이지의 파생 필드에 나타나는 대로 보여줍니다.
- AlNum
- 주어진 문자열에 영숫자만 포함되는지 여부를 확인합니다.
- 입력: string (string)
- 출력: 0 또는 1(int8)
- 예제. mylink.mystring1이 문자열 "OED_75_9*E"를 포함하는 경우, 다음 함수는 값 0(false)을 리턴합니다.
mylink.mystring2에 문자열 "12redroses"가 포함되어 있는 경우, 다음 함수는 값 1(true)을 리턴합니다.AlNum(mylink.mystring1)
AlNum(mylink.mystring2)
- Alpha
- 주어진 문자열에 영숫자만 포함되어 있는지 여부를 확인합니다.
- 입력: string (string)
- 출력: 0 또는 1(int8)
- 예제. mylink.mystring1이 문자열 "12redroses"를 포함하는 경우, 다음 함수는 값 0(false)을 리턴합니다.
mylink.mystring2에 문자열 "twelveredroses"가 포함되어 있는 경우, 다음 함수는 값 1(true)을 리턴합니다.Alpha(mylink.mystring1)
Alpha(mylink.mystring2)
- ASCII
문자열을 EBCDIC에서 ASCII로 변환합니다.
- 입력: string (string)
- 출력: result (string)
- 예제. mylink.mystring 에 문자열 "A" 가 포함되어 있으면 다음 함수는 문자열 "A" 를 리턴합니다.
Ascii(Ebcdic("A")) Ascii(Ebcdic(mylink.mystring))
- 변경
- 표현식에 제공된 하위 문자열을 대체 문자열로 대체합니다. substring 인수가 비어 있는 문자열인 경우 표현식 인수의 값이 리턴됩니다. replacement 인수의 값이 비어 있는 문자열인 경우, begin 인수 값으로 표시된 위치에서 시작하는 모든 substring이 제거됩니다. occurence 인수의 값이 0보다 작거나 같은 경우, begin 인수 값으로 표시된 위치에서 시작하는 모든 발생이 대체됩니다. 그렇지 않으면, 대체되는 발생 수는 begin 인수의 값으로 표시되는 위치에서 시작하여 occurrence 인수의 값으로 표시됩니다. begin 인수의 값이 1 이하인 경우 첫 번째 발생부터 대체가 시작됩니다. 그렇지 않으면 begin 인수의 값으로 표시되는 위치에서 대체가 시작됩니다.
- 입력: 표현식(string), 하위 문자열(string), 대체(string), [occurrence (int32), [begin (int32)]]
- 출력: result (string)
- 예제. mylink.mystring이 표현식 "aaabbbcccbbb"를 포함하는 경우, 다음 함수는 문자열 "aaaZZZcccZZZ"를 리턴합니다.
mylink.mystring에 "ABC"라는 표현식이 포함되고 하위 문자열이 비어 있는 경우, 다음 함수는 "ABC" 문자열을 리턴합니다.Change(mylink.mystring,"bbb","ZZZ")
mylink.mystring에 “aaabbbcccbbb” 표현식이 포함되어 있고 대체가 비어 있는 경우, 다음 함수는 "aaaccc" 문자열을 리턴합니다.Change(mylink.mystring,"","ZZZ")
Change(mylink.mystring, “bbb”, “”)
- CompactWhiteSpace
- 모든 연속 공백을 단일 공백으로 줄인 후 문자열을 리턴합니다.
- 입력: string (string)
- 출력: result (string)
- 예제. mylink.mystring에 문자열 "too many spaces"가 포함되어 있는 경우,
다음 함수는 값 "too many spaces"를 리턴합니다.
CompactWhiteSpace(mylink.mystring)
- Compare
- 정렬하기 위해 두 문자열을 비교합니다. 비교는 왼쪽으로 정렬되거나(기본값) 또는 오른쪽으로 정렬될 수 있습니다. 오른쪽 정렬 비교는 지정된 문자열 내의 숫자 하위 문자열을 숫자로 비교합니다. 숫자 문자열은 각 문자열에서 동일한 문자 위치에 나타나야 합니다. 예를 들어, 문자열 AB100 및 AB99를 오른쪽 정렬 비교하는 것은 100이 99보다 크기 때문에 AB100이 AB99보다 크다는 것을 표시합니다. 문자열 AC99 및 AB100의 왼쪽 정렬 비교는 C보다 B가 더 크기 때문에 AC99가 더 큼을 표시합니다.
- 입력: string1 (string), string2 (string), [justification (L 또는 R)]
- 출력: result (int8), string1이 string2보다 작은 경우 -1, 두 문자열이 같은 경우 0, string1이 string2보다 큰 경우 1이 될 수 있습니다.
- 예제. mylink.mystring1에 문자열 "AB99"가 포함되어 있고 mylink.mystring2에 문자열 "AB100"이
포함되어 있는 경우, 다음 함수는 결과 1을 리턴합니다.
mylink.mystring1에 문자열 "AB99"가 포함되어 있고 mylink.mystring2에 문자열 "AB100"이 포함되어 있는 경우, 다음 함수는 결과 -1을 리턴합니다.Compare(mylink.mystring1,mylink.mystring2,L)
Compare(mylink.mystring1,mylink.mystring2,R)
- CompareNoCase
- 정렬을 위해 두 문자열을 비교하며, 대소문자는 무시합니다.
- 입력: string1 (string), string2 (string)
- 출력: result (int8), string1이 string2보다 작은 경우 -1, 두 문자열이 같은 경우 0, string1이 string2보다 큰 경우 1이 될 수 있습니다.
- 예제. mylink.mystring1에 문자열 "Chocolate cake"가 포함되어 있고 mylink.mystring2에 문자열 "chocolate cake"가
포함되어 있는 경우, 다음 함수는 결과 0을 리턴합니다.
CompareNoCase(mylink.mystring1,mylink.mystring2)
- CompareNum
- 두 문자열의 처음 n자를 비교합니다.
- 입력: string1 (string), string2 (string), length (int16)
- 출력: result (int8), string1이 string2보다 작은 경우 -1, 두 문자열이 같은 경우 0, string1이 string2보다 큰 경우 1이 될 수 있습니다.
- 예제. mylink.mystring1에 문자열 "Chocolate"이 포함되어 있고 mylink.mystring2에 문자열 "Choccy Treat"가
포함되어 있는 경우, 다음 함수는 결과 0을 리턴합니다.
CompareNum(mylink.mystring1,mylink.mystring2,4)
- CompareNumNoCase
- 두 문자열의 처음 n자를 비교하며, 대소문자는 무시합니다.
- 입력: string1 (string), string2 (string), length (int16)
- 출력: result (int8), string1이 string2보다 작은 경우 -1, 두 문자열이 같은 경우 0, string1이 string2보다 큰 경우 1이 될 수 있습니다.
- 예제. mylink.mystring1에 문자열 "chocolate"이 포함되어 있고 mylink.mystring2에 문자열 "Choccy Treat"가
포함되어 있는 경우, 다음 함수는 결과 0을 리턴합니다.
CompareNumNoCase(mylink.mystring1,mylink.mystring2,4)
- 변환
- 지정된 외부 또는 내부 스토리지 형식으로 문자열을 변환합니다. string 표현식은 변환할 문자열을 평가합니다.
- 입력: 문자열(string), conv_code(string), conv_mode(string)다음 표에는 conv_code 및 conv_mode에 지정할 수 있는 값이 표시되어 있습니다. conv_mode에 대해 I를 지정하면 ICONV() 함수가 변환에 사용됩니다. conv_mode에 대해 O를 지정하면 OCONV() 함수가 변환에 사용됩니다.
표 1. conv_code 및 conv_mode에 대한 값. conv_code conv_mode 설명 최대 I 입력 문자열을 16진수에서 10진수로 변환합니다. MB I 입력 문자열을 2진수에서 10진수로 변환합니다. MX0C I 입력 문자열을 16진수에서 ASCII 문자열로 변환합니다. MB0C I 입력 문자열을 2진수에서 ASCII 문자열로 변환합니다. 최대 O 입력 문자열을 10진수에서 16진수로 변환합니다. MB O 입력 문자열을 10진수에서 2진수로 변환합니다. MX0C O 입력 문자열을 ASCII 문자열에서 16진수로 변환합니다. MB0C O 입력 문자열을 ASCII 문자열에서 2진수로 변환합니다. - 출력: result (string)
- 예제. mylink.mystring이 문자열 "1111"을 포함하는 경우, 다음 함수는 값 15를 리턴합니다.
mylink.mystring에 문자열 "CDE"가 포함되어 있는 경우에는 다음 함수가 434445 값을 리턴합니다.Conversion(mylink.mystring,"MB", "I")
Conversion(mylink.mystring,"MX0C", "O")
- 입력: 문자열(string), conv_code(string), conv_mode(string)
- 변환
- 지정된 표현식에 지정된 문자열에서 문자를 변환합니다. 하나의 목록에 지정된 문자를 다른 목록에 지정된 문자로 변환합니다.
- 입력: fromlist (string), tolist (string), expression (string)
- 출력: result (string)
- 예제. mylink.mystring1이 문자열 "NOW IS THE TIME"을 포함하는 경우, 다음 함수는 문자열 "NOW YS XHE XYME"를 리턴합니다.
Convert("TI","XY",mylink.mystring1)
- ConvertDatum
- 지정된 날짜 문자열을 "YYYYMMDD" 형식으로 변환합니다. 지정된 날짜 문자열은 "DDMMYY" 또는 "DDMMYYYY" 날짜 형식이어야 합니다. 날짜의 연도는 3000 이상이 될 수 없습니다. 형식은 지정된 날짜 문자열에 지정된 연도의 패턴을 나타냅니다.
- 입력: 날짜 (문자열), 형식 (문자열)
- 출력: result (string)
- 예제. mylink.date 에 날짜 문자열 "01082022" 가 포함되어 있으면 다음 함수는 날짜 문자열 "20220801" 을 리턴합니다.
ConvertDatum(mylink.date, "YYYY")
- 개수
- 문자열에서 하위 문자열의 수를 구합니다.
- 입력: string (string), substring (string)
- 출력: result (int32)
- 예제. mylink.mystring1에 문자열 "chocolate
drops, chocolate ice cream, chocolate bars"가 포함되어 있는 경우, 다음 함수는 3을 리턴합니다.
Count(mylink.mystring1,"choc")
- Dcount
- 문자열에서 구분된 필드의 수를 계산합니다.
- 입력: string (string), delimiter (string)
- 출력: result (int32)
- 예제. mylink.mystring1에 문자열 "chocolate
drops, chocolate ice cream, chocolate bars"가 포함되어 있는 경우, 다음 함수는 3을 리턴합니다.
Dcount(mylink.mystring1,",")
- DecryptString
- 32바이트키를 사용하여 암호 해독 (AES-256) 입력 암호 텍스트.
- 입력: 암호 텍스트 (문자열), 키 (문자열)
- 출력: result (string)
- 예제. Link_1.Phone 은 암호화된 문자열을 포함합니다. 이 함수는 복호화된 문자열 "+1 123-456-7890" 을 출력합니다.
DecryptString(Link_1.Phone, "12345678912345678912345678912345")
- DownCase
- 문자열의 모든 대문자를 소문자로 변경합니다.
- 입력: string (string)
- 출력: result (string)
- 예제. mylink.mystring1이 문자열 "CaMel cAsE"를 포함하는 경우, 다음 함수는 문자열 "camel case"를 리턴합니다.
DownCase(mylink.mystring1)
- DQuote
- 문자열을 큰따옴표로 묶습니다.
- 입력: string (string)
- 출력: result (string)
- 예제. mylink.mystring1 에 문자열 "needs quote" 가 포함되어 있는 경우, 다음 함수는 문자열 " " needs quotes " " 를 리턴합니다.
DQuote(mylink.mystring1)
- EncryptString
- 32바이트 키로 입력 문자열을 암호화(AES-256)합니다.
- 입력: 일반 텍스트 (문자열), 키 (문자열)
- 출력: result (string)
- 예제. Link_1.Phone에 "+1 123-456-7890" 문자열이 포함된 경우 이 함수는 암호화된 문자열을 출력합니다.
EncryptString(Link_1.Phone, "12345678912345678912345678912345")
- Ereplace
- 표현식의 하위 문자열을 대체 문자열로 대체합니다. substring 인수가 빈 문자열인 경우, replacement 인수의 값에는 expression 인수의 값이 앞에 추가됩니다. replacement 인수가 빈 문자열인 경우, begin 인수 값으로 표시된 위치에서 시작하는 하위 문자열의 모든 발생이 제거됩니다. occurence 인수의 값이 0보다 작거나 같은 경우, begin 인수 값에서 시작하는 모든 발생이 대체됩니다. 그렇지 않으면, 대체되는 발생 수는 begin 인수의 값으로 표시되는 위치에서 시작하여 occurrence 인수의 값으로 표시됩니다. begin 인수의 값이 1 이하인 경우 첫 번째 발생부터 대체가 시작됩니다. 그렇지 않으면 begin 인수의 값으로 표시되는 위치에서 대체가 시작됩니다.
- 입력: 표현식(string), 하위 문자열(string), 대체(string), [occurrence (int32), [begin (int32)]]
- 출력: result (string)
- 예제. mylink.mystring이 표현식 "ABC"를 포함하고 하위 문자열이 비어 있는 경우, 다음 함수는 값 "ZZZABC"를 리턴합니다.
mylink.mystring에 표현식 "aaabbbcccbbb"가 포함되어 있고 대체가 비어 있는 경우, 다음 함수는 값 "aaaccc"를 리턴합니다.Ereplace(mylink.mystring,"","ZZZ")
Ereplace(mylink.mystring, "bbb", "")
- 필드
- 문자열에서 지정된 구분 기호 사이에 있는 하나 이상의 하위 문자열을 리턴합니다. 인수 occurrence는
구분 기호로 사용할 구분 기호 발생을 지정합니다. 인수
number는 선택적으로 리턴할 하위 문자열 수를 지정합니다.
- 입력: string (string), delimiter (string), occurrence (int32), [number (int32)]
- 출력: result (string)
- 예제. mylink.mystring1이 문자열 "chocolate drops, chocolate ice cream, chocolate bars, chocolate dippers"를 포함하는 경우, 다음 함수는 문자열 " chocolate ice cream"을 리턴합니다.
mylink.mystring1에 문자열 "chocolate drops, chocolate ice cream, chocolate bars, chocolate dippers"가 포함되어 있는 경우, 다음 함수는 문자열 " chocolate ice cream, chocolate bars"를 리턴합니다.Field(mylink.mystring1,",",2)
Field(mylink.mystring1,",",2,2)
- FIELDSTORE
지정된 분리문자에 의해서 구분된 필드의 삽입, 삭제 또는 바꾸기를 통해 문자열을 수정합니다.
- 입력: string (string), delimiter (string), start (int32), field (int32), new string (string)
- 출력: result (string)
- 예제. mylink.mystring1 에 문자열 "racecar|level" 이 포함되어 있으면 다음 함수는 문자열 " racecar|정오 " 입니다.
Fieldstore(mylink.mystring1,"|",2,2,"noon")
- FindReplace
소스 문자열에서 하위 문자열을 모두 찾아 대체 문자열로 바꿉니다.
- 입력: 소스 문자열(string), 하위 문자열(string), 대체 문자열(string)
- 출력: result (string)
- 예제. mylink.mystring1에 문자열 "A-B-C"가 포함되어 있고 찾기 하위 문자열이 "-"이며 대체 문자열이 ", "인 경우 다음 함수는 문자열 "A, B, C"를 리턴합니다.
FindReplace(mylink.mystring1, "-", ", ")
- Fmt
출력을 위해 데이터를 형식화합니다. format string 인수는 string을 형식화하는 방법을 지정하는 표현식입니다.
- 입력: 문자열 (문자열), 형식 문자열 (문자열)
- 출력: result (string)
- 예제. mylink.mystring 에 문자열 1234567890이 있으면 다음 함수는 결과 값 1234-5678-9000-0000을 리턴합니다.
Fmt(1234567890, '%%%%-%%%%-%%%%-%%%%') Fmt(mylink.mystring, '%%%%-%%%%-%%%%-%%%%')
- 접기
문자열을 필드 표시로 구분된 여러 하위 문자열로 나눕니다.
- 입력: 문자열 (문자열), 숫자 (int32)
- 출력: result (string)
- 예제. mylink.mystring1에 "THIS IS FOLDED STRING" 문자열이 포함되어 있는 경우 다음 함수는 문자열 "THISFISAFFOLDEFDFSTRINFG" 를 리턴합니다.
Fold(mylink.mystring1, 5)
- FoldDP
문자열을 문자 길이가 아닌 표시 위치의 여러 하위 문자열로 나눕니다.
- 입력: string (string), number (int32), string (string)
- 출력: result (string)
- 예제. mylink.mylist 에 문자열 "abcdefghijklmnop", 숫자 5및 문자열 ' ' 다음 함수는 "abcde�fghij�klmnop" 문자열을 리턴합니다.
FoldDP("abcdefghijklmnop", 5, ' ') FoldDP(mylink.mylist)
- 색인
- 하위 문자열의 시작 문자 위치를 찾습니다. 0부터 시작합니다. 인수 occurrence는 찾을 하위 문자열의 발생을 지정합니다.
- 입력: string (string), substring (string), occurrence (int32)
- 출력: result (int32)
- 예제. mylink.mystring1이 문자열 "chocolate drops, chocolate ice cream, chocolate bars, chocolate dippers"를 포함하는 경우, 다음 함수는 값 18을 리턴합니다.
Index(mylink.mystring1,"chocolate",2)
- Left
- 문자열의 가장 왼쪽에 있는 n 문자를 리턴합니다.
- 입력: string (string) number (int32)
- 출력: result (string)
- 예제. mylink.mystring1이 문자열 "chocolate drops, chocolate ice cream, chocolate bars, chocolate dippers"를 포함하는 경우, 다음 함수는 문자열 "chocolate"을 리턴합니다.
Left(mylink.mystring1,9)
- Len
- 문자열의 길이를 문자 수로 리턴합니다.
- 입력: string (string)
- 출력: result (int32)
- 예제. mylink.mystring1에 문자열 "chocolate"이 포함되어 있는 경우,
다음 함수는 값 9를 리턴합니다.
Len(mylink.mystring1)
- MatchField
일치 패턴에 대해 문자열을 검사합니다.
- 입력: string (string), pattern (string), field (int32)
- 출력: result (int8)
- 예제. pattern 은 문자열에 포함된 모든 문자를 포함하는 지정자를 포함해야 합니다. mylink.mystring1에 "XYZ123AB", 문자열이 포함된 경우 다음 함수는 문자열의 모든 부분이 패턴에 지정되지 않았기 때문에 빈 문자열을 반환합니다.
MatchField(mylink.mystring1, "3X3N", 1)
- NextValidDate
유효한 다음 날짜를 가져옵니다. 제공된 문자열은 "yyyy-mm-dd" 날짜 형식이어야 합니다.
- 입력: 날짜 (문자열)
- 출력: result (string)
- 예제. mylink.date 에 문자열 "2021-12-32" 가 포함되어 있으면 다음 함수는 날짜 문자열 "2022-01-01" 을 리턴합니다.
NextValidDate(mylink.date)
- Num
- 문자열을 숫자로 변환할 수 있으면 1을 리턴합니다. 그렇지 않으면 0을 리턴합니다.
- 입력: string (string)
- 출력: result (int32)
- 예제. mylink.mystring1에 문자열 "22"가 포함되어 있는 경우,
다음 함수는 값 1을 리턴합니다.
mylink.mystring1에 문자열 "twenty two"가 포함되어 있는 경우, 다음 함수는 값 0을 리턴합니다.Num(mylink.mystring1)
Num(mylink.mystring1)
- OffsetOfSubstring
0을 기반으로 하는 %search_start%에서 시작하는 문자열에서 하위 문자열의 첫 번째 발생의 시작 위치를 리턴합니다. 세 번째 인수가 0보다 작거나 첫 번째 인수의 총 길이인 1보다 크면 -1가 반환됩니다. 그렇지 않으면 하위 문자열을 찾을 수 없는 경우 세 번째 인수에서 1을 뺀 값이 리턴됩니다. 시작 위치도 0을 기준으로 합니다.
- 입력: string (string), substring_string (substring string), search_start (search start)
- 출력: 숫자 (number)
- 예제. mylink.mystring1 에 문자열 "초콜릿 방울, 초콜릿 아이스크림, 초콜릿 막대, 초콜릿 디퍼" 가 포함되어 있는 경우, 다음 함수는 값 17을 리턴합니다.
OffsetOfSubstring(mylink.mystring1, "chocolate", 2)
- OffsetOfSubstring1
1을 기반으로 하는 %search_start%에서 시작하는 문자열에서 하위 문자열의 첫 번째 발생의 시작 위치를 리턴합니다. 세 번째 인수가 1보다 작거나 첫 번째 인수의 총 길이보다 크면 -1가 반환됩니다. 그렇지 않으면 하위 문자열을 찾을 수 없는 경우 세 번째 인수와 동일한 값이 리턴됩니다. 시작 위치도 1을 기준으로 합니다.
- 입력: string (string), substring_string (substring string), search_start (search start)
- 출력: 숫자 (number)
- 예제. mylink.mystring1이 문자열 "chocolate drops, chocolate ice cream, chocolate bars, chocolate dippers"를 포함하는 경우, 다음 함수는 값 18을 리턴합니다.
OffsetOfSubstring1(mylink.mystring1, "chocolate", 2)
- PadString
- 채움 문자의 지정된 수로 채워진 문자열을 리턴합니다.
- 입력: string (string) padstring (string) padlength (int32)
- 출력: result (string)
- 예제. mylink.mystring1이 문자열 "AB175"를 포함하는 경우, 다음 함수는 문자열 "AB17500000"을 리턴합니다.
PadString(mylink.mystring1,"0",5)
- 역방향
- 문자열을 되돌립니다.
- 입력: string (string)
- 출력: result (string)
- 예제. mylink.mystring1에 문자열 "Hello world"가 포함되어 있는 경우 다음 함수는 문자열 "dlrow olleH"를 리턴합니다.
Reverse(mylink.mystring1)
- Right
- 문자열의 가장 오른쪽에 있는 n 문자를 리턴합니다.
- 입력: string (string) number (int32)
- 출력: result (string)
- 예제. mylink.mystring1이 문자열 "chocolate drops, chocolate ice cream, chocolate bars, chocolate dippers"를 포함하는 경우, 다음 함수는 문자열 "dippers"를 리턴합니다.
Right(mylink.mystring1,7)
- RmUnprint
인쇄할 수 없는 문자열을 제거합니다.
- 입력: string (string)
- 출력: result (string)
- 예제. mylink.mystring 에 "�������������������������������������������� 포함하는 경우 다음 함수는 결과 값" Test " 를
RmUnprint("����Test����") RmUnprint(mylink.mystring)
- Soundex
- SOUNDEX 평가를 위한 표준 개방형 알고리즘 기반으로 (거의) 발음이 같은 단어 세트를 식별하는 코드를 리턴합니다.
- 입력: string (string)
- 출력: result (string)
- 예제. mylink.mystring1이 문자열 "Griffin"을 포함하는 경우, 다음 함수는 코드 "G615"를 리턴합니다.
mylink.mystring1에 문자열 "Griphin"이 포함되어 있는 경우, 다음 함수 역시 코드 "G615"를 리턴합니다.Soundex(mylink.mystring1)
Soundex(mylink.mystring1)
- 공백
- n 공백 문자의 문자열을 리턴합니다.
- 입력: length (int32)
- 출력: result (string)
- 예제. mylink.mylength가 숫자 100을 포함하는 경우, 다음 함수는 100개의 공백 문자를 포함하는 문자열을 리턴합니다.
Space(mylink.mylength)
- SQuote
- 작은따옴표 표시로 문자열을 묶습니다.
- 입력: string (string)
- 출력: result (string)
- 예제. mylink.mystring1이 인용 부호가 필요한 문자열을 포함하는 경우, 다음 함수는 문자열 'needs quotes'를 리턴합니다.
SQuote(mylink.mystring1)
- Str
- 문자열을 지정한 횟수만큼 반복합니다.
- 입력: string (string) repeats (int32)
- 출력: result (string)
- 예제. mylink.mystring1이 문자열 "choc"를 포함하는 경우, 다음 함수는 문자열 "chocchocchocchocchoc"를 리턴합니다.
Str(mylink.mystring1,5)
- StrCmp
사전 순서에 따라 두 문자열을 비교합니다. string1 이 string2보다 크면 "1" 을 리턴합니다. "-1"이 string1보다 작으면 string2를 반환합니다. string1과 string2가 같으면 0을 반환합니다. 이 기능은 호환성을 위해 제공되지만 사용하는 것은 권장되지 않습니다.
- 입력: string1 (string), string2 (string)
- 출력: result (int32)
- 예제. mylink.mystring1 이 "world" 이고 mylink.mystring2 가 "hello" 인 경우, 다음 함수는 1을 리턴합니다.
StrCmp("world", "hello") StrCmp(mylink.mystring1, mylink.mystring2)
- StripWhiteSpace
- 문자열에서 모든 공백 문자를 제거한 후 문자열을 리턴합니다.
- 입력: string (string)
- 출력: result (string)
- 예제. mylink.mystring에 문자열 "too many spaces"가 포함되어 있는 경우,
다음 함수는 문자열 "toomanyspaces"를 리턴합니다.
StripWhiteSpace(mylink.mystring)
- SubstituteString
- 문자열 내에서 하나 또는 모든 하위 문자열을 대체합니다.
- 입력: string_to_replace (string), substring (string), substring_replacement (string), substring_num (int8), direction_num (int8), mode_num (int8)
- 출력: result (string)
- 예제: 열 mylink.mystring 에 문자열 "123451234512345" 가 포함된 경우, 다음 함수는 값 "aa2345aa2345aa2345" 를 리턴합니다.
SubstituteString(mylink.mystring, "1", "aa", 0, 1, 1)
- Trim
- 선행 및 후미 공백 및 탭을 모두 제거합니다. 또한 함수는 공백 또는 탭의 내부 어커런스를 하나로 줄입니다. stripchar 인수는 공백 또는 탭 이외의 문자를 선택적으로 지정합니다. options 인수는 선택적으로 수행할 트림 조작의 유형을 지정하며 다음 값 중 하나 이상을 포함합니다.
A stripchar의 모든 발생을 제거합니다.
B stripchar의 선행 및 후행 어커런스를 모두 제거하십시오.
D 선행, 후미 및 중복 공백 문자를 제거합니다.
E 후행 공백 문자를 제거합니다.
F 선행 공백 문자를 제거합니다.
L stripchar의 모든 선행 어커런스를 제거합니다.
R stripchar의 선행, 후행 및 중복 어커런스를 제거합니다.
T stripchar의 모든 후행 어커런스을 제거합니다.
- 입력: string (string) [stripchar (string)] [options (string)]
- 출력: result (string)
- 예제. mylink.mystring에 문자열 " String
with whitespace "가 포함되어 있는 경우,
다음 함수는 문자열 "String with whitespace"를 리턴합니다.
mylink.mystring이 문자열 "..Remove..redundant..dots...."을 포함하는 경우, 다음 함수에서 "Remove.redundant.dot" 문자열을 리턴합니다.Trim(mylink.mystring)
mylink.mystring에 "Remove..all..dots...." 문자열이 포함되어 있는 경우에는 다음 함수에서 "Removealldots" 문자열을 리턴합니다.Trim(mylink.mystring,".")
mylink.mystring에 "Remove..trailing..dots...." 문자열이 포함되어 있는 경우에는 다음 함수에서 "Remove..trailing..dots" 문자열을 리턴합니다.Trim(mylink.mystring,".","A")
Trim(mylink.mystring,".","T")
트림 함수는 변수 및 고정 길이 필드를 모두 사용합니다. DataStage®에서 고정 길이 필드는 기본적으로 널 (NULL) 문자 또는 APT_STRING_PADCHAR에 의해 지정된 문자로 채워집니다. Transformer 스테이지의 고정 길이 필드에서 후미 공백을 자르는 경우 필드 데이터가 필드의 고정 길이와 같지 않으면 조작이 실패합니다. 고정 길이 필드에서 필드의 마지막 문자는 항상 NULL 또는 APT_STRING_PADCHAR입니다.
- TrimB
- 문자열에서 모든 후미 공백과 탭을 제거합니다.
- 입력: string (string)
- 출력: result (string)
- 예제. mylink.mystring에 문자열 "too
many trailing spaces "가 포함되어 있는 경우,
다음 함수는 문자열 "too many trailing spaces"를 리턴합니다.
TrimB(mylink.mystring)
- TrimF
- 문자열에서 모든 선행 공백과 탭을 제거합니다.
- 입력: string (string)
- 출력: result (string)
- 예제. mylink.mystring에 문자열 " too
many leading spaces"가 포함되어 있는 경우,
다음 함수는 문자열 "too many leading spaces"를 리턴합니다.
TrimF(mylink.mystring)
- TrimLeadingTrailing
- 문자열에서 모든 선행 및 후미 공백과 탭을 제거합니다.
- 입력: string (string)
- 출력: result (string)
- 예제. mylink.mystring에 문자열 "too many spaces"가 포함되어 있는 경우,
다음 함수는 값 "too many spaces"를 리턴합니다.
TrimLeadingTrailing(mylink.mystring)
- UpCase
- 문자열의 모든 소문자를 대문자로 변경합니다.
- 입력: string (string)
- 출력: result (string)
- 예제. mylink.mystring1이 문자열 "CaMel cAsE"를 포함하는 경우, 다음 함수는 문자열 "CAMEL CASE"를 리턴합니다.
UpCase(mylink.mystring1)
- UrlDecode
URL 인코딩 문자열을 원래 표현으로 디코딩합니다. URL 로 인코딩된 문자열은 이전에는 RCF 3986 또는 RCF 1738을 사용하여 인코딩되었습니다.
- 입력: string (string)
- 출력: result (string)
- 예제. mylink.urlFragment에 "Address%3DHampshire,United%20Kingdom", 문자열이 포함된 경우 다음 함수는 "Address=Hampshire,United%20Kingdom"이라는 문자열을 반환합니다:
UrlDecode(mylink.urlFragment)
- UrlEncode
문자열을 URL 인코딩 형식으로 변환합니다.
- 입력: string (string)
- 출력: result (string)
- 예제. mylink.string에
"Name=John Smith/Address=Hampshire\~United Kingdom/Telephone=+441962808000/"
문자열이 포함된 경우 다음 함수는 인코딩된 문자열 "Name%3DJohn%20Smith%2FAddress%3DHampshire~United%20Kingdom%2FTelephone%3D%2B441962808000%2F":을 반환합니다UrlEncode(myLink.string)