IBM FileNet P8, 버전 5.2.1            

문자열 함수

이 절에는 문자열 값에 적용되는 함수에 대한 간략한 설명이 포함되어 있습니다.

표 1. 함수 및 함수의 용도 표
함수 기능
convert 문자열을 다른 데이터 유형으로 변환하거나 다른 데이터 유형을 문자열로 변환합니다.
decode 인코드된 문자열 표현식을 다시 원래 문자열로 변환합니다.
encode 문자열 표현식을 의미 있는 텍스트 문자열로 변환합니다.
hex 16진 문자 코드를 포함하는 문자열 리터럴을 ASCII 문자열로 변환합니다.
in_set 하나의 문자열이 다른 문자열의 전체 문자로 구성된 경우 true 부울 값을 리턴합니다.
is_number 문자열 표현식이 부동 소수점 값 또는 정수 값으로 평가되는 경우 true 부울 값을 리턴합니다.
is_time 문자열 표현식이 유효한 시간 값으로 평가되는 경우 true 부울 값을 리턴합니다.
len 문자열의 길이를 리턴합니다.

lower

upper

문자열의 문자를 소문자 또는 대문자로 변경합니다.

ltrim

rtrim

trim

문자열의 시작(ltrim), 끝(rtrim) 또는 양쪽 끝(trim)에서 지정된 문자 또는 공백을 삭제합니다.
max 지원되는 데이터 유형의 표현식 목록에서 최대값을 리턴합니다.
min 지원되는 데이터 유형의 표현식 목록에서 최소값을 리턴합니다.
numbertostring 지정된 마스크를 사용하여 부동 소수점 표현식 또는 정수식을 문자열 표현식으로 변환합니다.
repeat 다른 문자열을 지정된 횟수만큼 반복하여 문자열을 작성합니다.
strins 지정된 위치에서 하나의 문자열을 다른 문자열에 삽입합니다.
strloc 문자열 내에서 부속 문자열의 시작 위치를 리턴합니다. 부속 문자열이 없는 경우, 이 함수는 0을 리턴합니다.
stringtotime 지정된 마스크를 사용하여 문자열 표현식을 시간 표현식으로 변환합니다.
substitute 문자열 내에서 하나의 부속 문자열을 다른 부속 문자열로 바꿉니다.
substr 지정된 시작 위치 및 길이로 부속 문자열을 리턴합니다.
timetostring 지정된 마스크를 사용하여 시간 표현식을 문자열 표현식으로 변환합니다.
translate 문자열의 문자를 바꿉니다.
xmlencode XML 필드를 문자열 표현식으로 변환합니다.
xmldecode 문자열 표현식을 XML로 변환합니다.

hex

이 함수는 16진 문자 코드의 문자열 리터럴을 ASCII 문자열로 변환합니다. hex 함수는 모든 문자를 표시할 수 있지만 일반적으로 탭과 같이 ASCII 표현이 없는 문자에 사용됩니다.

모든 두 개의 16진 숫자는 결과 문자열에서 하나의 문자를 표시합니다. 문자열 리터럴에 16진 문자가 홀수 개가 있으면 오류가 발생합니다. 다음 구문을 사용하십시오.
hex (hex_codes)
여기서 hex_codes는 문자 또는 일련의 문자에 대한 16진 코드를 포함하는 문자열 리터럴입니다.
다음 예제는 61, 62 및 63이 a, b, c의 16진 코드이므로 abc를 리턴합니다.
hex ("616263")

translate

이 함수는 하나의 문자열에 있는 문자를 지정된 문자로 바꾸어 새 문자열을 작성합니다. translate 함수는 문자 인코딩에 유용합니다.

다음 구문을 사용하십시오.
translate (source_string, search_string,
replace_string)
각 항목에 대한 설명은 다음과 같습니다.
표 2. translate 함수의 매개변수 및 설명
매개변수 설명
source_string 바꿀 문자를 포함하는 문자열입니다.
search_string source_string 내에서 바꿀 문자의 문자열입니다. replace_string과 길이가 같아야 합니다.
replace_string 교체 문자의 문자열입니다. search_string과 길이가 같아야 합니다.

검색 및 바꾸기는 각 문자를 기반으로 발생합니다. 검색 문자열이 "abc"이고 바꾸기 문자열이 "def"인 경우, 이 함수는 새로 작성된 문자열에서 "a"를 "d"로, "b"를 "e"로, "c"를 "f"로 변환합니다.

예를 들어, 값이 다음과 같습니다.
source_string에 "*123-#44-!999"가 포함되어 있습니다.
search_string에 "#*!-"이 포함되어 있습니다.
replace_string에 "XYZ&"가 포함되어 있습니다.
함수는 다음과 같은 새 문자열을 출력합니다.
Y123&X44&Z999

소스 문자열, 검색 문자열 및 바꾸기 문자열의 컨텐츠는 변경되지 않습니다.

팁: 개별 문자가 아니라 전체 부속 문자열을 검색하고 바꾸려면 substitute 함수를 사용하십시오.
다음 예제에서는 translate 함수를 사용하여 유럽 숫자 형식에서 미국 숫자 형식으로 문자열을 변환합니다.
translate (str, ".,", ",.")

lower, upper

해당 함수는 문자열의 모든 문자를 각각 소문자 또는 대문자로 변환합니다. 다음 구문을 사용하십시오.
lower (string_exp)

upper (string_exp)
여기서 string_exp는 변환할 문자열 표현식입니다.

in_set

이 함수는 두 개의 문자열을 비교하여 첫 번째 문자열의 모든 문자가 두 번째 문자열에 포함된 경우 true 부울 값을 리턴합니다. 두 번째 문자열에 포함되지 않은 하나 이상의 문자가 첫 번째 문자열에 포함된 경우, 이 함수는 false 값을 리턴합니다. 두 문자열 모두에서 문자가 동일한 순서로 표시될 필요는 없습니다. 또한 두 번째 문자열에는 추가 문자가 있을 수 있습니다.

다음 구문을 사용하십시오.
in_set (subset_string, superset_string)
각 항목에 대한 설명은 다음과 같습니다.
표 3. in_set 함수의 매개변수 및 설명
매개변수 설명
subset_string 서브세트 문자만 포함하는 문자열 표현식입니다.
superset_string subset_string이 비교되는 문자열 표현식입니다.
다음 예제
in_set (name, "abcdefghijklmnopqrstuvwxyz")
에서, 이 함수는
name = "jim"
일 경우 true를 리턴하지만 다음 경우에는 false를 리턴합니다.
name = "Fido"
또는
name = "a.b"

len

이 함수는 문자열 표현식의 실제 길이(선언된 길이가 아님)를 계산합니다. 이는 표현식에 있는 공백을 포함한 총 문자 수를 제공합니다. 다음 구문을 사용하십시오.
len (string_expr)
여기서 string_expr은 길이가 계산되는 문자열 표현식입니다.
다음 예제에서 리턴되는 길이는 15입니다. 묶음 따옴표는 문자로 계수되지 않습니다.
len ("Hamilton Burger")

repeat

이 함수는 지정된 문자열을 지정된 횟수만큼 반복하여 문자열을 작성합니다. 다음 구문을 사용하십시오.
repeat (string_expr, repeat_num)
각 항목에 대한 설명은 다음과 같습니다.
표 4. repeat 함수의 매개변수 및 설명
매개변수 설명
string_expr 반복되는 문자열 표현식입니다.
repeat_num string_exp를 반복하는 횟수입니다.
다음 예제는 abcdabcdabcdabcdabcd 문자열을 출력합니다.
repeat ("abcd", 5)

strloc

부속 문자열은 소스 문자열의 일부입니다. 부속 문자열의 길이는 소스 문자열의 길이와 같거나 적습니다. 예를 들어 Good, Morn, od MorniGood Morni는 모두 Good Morning의 부속 문자열입니다.

소스 문자열에서 특정 문자열이 발생하는 위치를 찾으려면 strloc 함수를 사용하십시오. 이 함수는 소스 문자열에서 부속 문자열의 시작 문자 위치를 리턴합니다.

부속 문자열을 소스 문자열에서 두 번 이상 찾을 수 있는 경우, 이 함수는 해당 부속 문자열의 첫 번째 발생이 시작하는 위치를 리턴합니다. 부속 문자열이 없거나 소스 문자열보다 긴 경우, 이 함수는 0을 리턴합니다.

다음 구문을 사용하십시오.
strloc (source_string, sub_string)
각 항목에 대한 설명은 다음과 같습니다.
표 5. strloc 함수의 매개변수 및 설명
매개변수 설명
source_string 부속 문자열을 검색할 문자열입니다.
sub_string 검색할 문자열입니다.
이 예제에서는 부속 문자열이 소스 문자열의 6 위치에서 시작되므로 값 6을 리턴합니다.
strloc ("Good Morning", "Morning")

substr

이 함수는 소스 문자열에서 부속 문자열을 추출하여 새 문자열을 작성합니다. 소스 문자열과 추출이 시작되는 문자 위치를 지정합니다. 또한 선택적으로 추출할 문자 수를 제공할 수 있습니다. 이 정보를 제공하지 않는 경우, 소스 문자열의 끝에서 추출이 중지됩니다.

다음 구문을 사용하십시오.
substr (source_string, start_pos {, length})
각 항목에 대한 설명은 다음과 같습니다.
표 6. substr 함수의 매개변수 및 설명
매개변수 설명
source_string 소스 문자열입니다.
start_pos 추출이 시작되는 문자 위치입니다.
length 추출할 문자 수(예: 추출된 문자열의 길이)입니다.
다음 예제는 Morning 문자열을 리턴합니다. 묶음 따옴표는 문자열의 일부로 계수되지 않습니다.
substr ("Good Morning!", 6, 7)

이 함수는 또한 문자열의 길이보다 1이 큰 위치에서 길이가 0인 문자열(따옴표 사이에 문자가 없는 문자열)을 추출할 수 있습니다. 이 사용법은 길이가 0인 문자열을 주변 조건으로 하는 알고리즘에 유용합니다. 1부터 문자열의 마지막 문자 +1 위치까지 문자를 추출할 수 있습니다. 따라서 1 및 문자열 길이 +1 위치가 주변 조건입니다.

다음과 같은 경우에 런타임 오류가 발생합니다.

  • 시작 위치가 1보다 작거나 소스 문자열 길이 + 1보다 큽니다
  • 지정된 길이가 소스 문자열의 나머지 문자 수보다 긴 부속 문자열을 작성합니다(즉, start_pos + 길이 > len (source_string) + 1).

strins

이 함수는 하나의 문자열을 다른 문자열에 삽입하여 새 문자열을 작성합니다. 소스 문자열 및 삽입 문자열의 값은 변경되지 않습니다. 다음 구문을 사용하십시오.
strins (source_string, insert_string, start_pos)
각 항목에 대한 설명은 다음과 같습니다.
표 7. strins 함수의 매개변수 및 설명
매개변수 설명
source_string insert_string과 결합하여 새 문자열을 작성하는 문자열입니다.
insert_string source_string과 결합하여 새 문자열을 작성하는 문자열입니다.
start_pos

source_string에서 삽입이 시작되는 위치입니다. 값의 범위는 1 ~ source_string + 1입니다.

1보다 작거나 source_string + 1보다 큰 값을 지정하는 경우 런타임 오류가 발생합니다.

아래 예제에서는 다음 사항이 설정되어 있다고 가정합니다.
insert_str = "Mr. Jones,"
source_str = "Good morning, what a lovely day."
strins (source_str, insert_str, 15)
위에 지정된 값을 사용하여 함수는 다음 문자열을 리턴합니다.
Good morning, Mr. Jones, what a lovely day.

substitute

이 함수는 지정된 소스 문자열 내부에서 하나의 부속 문자열을 다른 부속 문자열로 바꾸어 새 문자열을 작성합니다. 다음 구문을 사용하십시오.
substitute (source_string, unwanted_string,
replacement_string)
각 항목에 대한 설명은 다음과 같습니다.
표 8. substitute 함수의 매개변수 및 설명
매개변수 설명
source_string unwanted_string을 포함하는 문자열입니다.
unwanted_string source_string의 부속 문자열입니다.
replacement_string unwanted_string을 바꿔 새 문자열을 작성하는 문자열입니다.
다음 예제에서는 TestString 내에서 abc가 발생할 때마다 wxyz로 바뀝니다. 교체는 왼쪽에서 오른쪽으로 발생합니다.
substitute (TestString, "abc", "wxyz")
다음과 같은 경우,
TestString = "abcdabcd"
함수는 다음과 같은 새 문자열을 리턴합니다.
wxyzdwxyzd
소스 문자열, 원하지 않는 문자열 및 교체 문자열의 컨텐츠는 변경되지 않습니다.
팁: 부속 문자열이 아니라 개별 문자를 검색하고 바꾸려면 translate 함수를 사용하십시오.

ltrim, rtrim 및 trim

해당 함수는 기존 소스 문자열을 복사하고 새 문자열의 시작(ltrim), 끝(rtrim) 또는 양쪽 끝(trim)에서 지정된 문자 또는 공백을 삭제하여 새 문자열을 작성합니다. 모든 경우에 소스 문자열은 변경되지 않고 유지됩니다.

세 함수 모두에 대해 다음 구문을 사용하십시오.
ltrim (string_expr{, trim_char}opt)

rtrim (string_expr{, trim_char}opt)

trim (string_expr{, trim_char}opt)
각 항목에 대한 설명은 다음과 같습니다.
표 9. trim, ltrim 및 rtrim 함수의 매개변수 및 설명
매개변수 설명
string_expr 복사할 소스 문자열 표현식입니다.
trim_char

새 문자열에서 삭제할 문자를 지정하는 선택적 매개변수입니다. 이 매개변수를 지정하지 않는 경우, 공백이 삭제됩니다.

함수에 따라 삭제는 새 문자열의 시작, 끝 또는 양쪽 끝에서 시작되어 trim_char에 지정되지 않은 문자(또는 공백이 아닌 문자)가 나타날 때까지 계속됩니다.

다음 예제는 LastName에서 모든 선행 공백을 삭제합니다. 예제가
LastName = "Smith"
인 경우 리턴되는 새 문자열은 다음과 같습니다.
"Smith"
ltrim (LastName)
아래 예제에서는 Status라는 문자열의 끝에서 & 문자를 삭제합니다. 다음과 같은 경우,
Status = "OpenXY&Z&&&&"
리턴되는 새 문자열은 다음과 같습니다.
"OpenXY&Z"
rtrim (Status, "&")
다음 예제는 AccountName에서 모든 후행 숫자를 삭제합니다.
rtrim (AccountName, "0123456789")

is_number

이 함수는 지정된 문자열 표현식이 부동 소수점 값 또는 정수 값으로 평가되는지 여부를 판별합니다. 부속 문자열만이 아니라 전체 문자열이 부동 소수점 또는 정수로 평가되는 경우 is_number 함수는 true 부울 값을 리턴하고 그렇지 않은 경우에는 false를 리턴합니다.

다음 구문을 사용하십시오.
is_number (expr)
여기서 expr은 문자열 표현식입니다.
다음 세 가지 예제는 각각 true, false 및 false를 리턴합니다.
is_number ("123.4")

is_number ("no")

is_number ("abc63j")

is_time

이 함수는 지정된 문자열 표현식이 지정된 형식의 시간 값으로 평가되는지 여부를 판별합니다. 부속 문자열만이 아니라 전체 문자열이 지정된 대로 형식화된 시간으로 평가되는 경우 is_time 함수는 true 부울 값을 리턴하고 그렇지 않은 경우에는 false 값을 리턴합니다.

다음 구문을 사용하십시오.
is_time (str_expr, date_time_mask)
각 항목에 대한 설명은 다음과 같습니다.
표 10. is_time 함수의 매개변수 및 설명
매개변수 설명
str_expr 문자열 표현식입니다.
date_time_mask is_time이 true 값을 리턴하도록 str_expr에서 사용해야 하는 형식을 지정하는 날짜/시간 마스크입니다.
다음 예제에서 첫 번째 예제는 false를 리턴하고 두 번째 예제는 true를 리턴합니다. 두 예제 모두에서 is_time 함수를 평가할 수 있도록 문자열 표현식을 시간 데이터 유형으로 변환하기 위해 convert 함수가 사용됩니다.
is_time ("nov121995", "mm/dd/yyyy")

is_time ("11/12/1995", "mm/dd/yyyy")

timetostring

이 함수는 지정된 형식을 사용하여 시간 표현식을 문자열 표현식으로 변환합니다. 다음 구문을 사용하십시오.
timetostring (time_expr, date_time_mask)
각 항목에 대한 설명은 다음과 같습니다.
표 11. timetostring 함수의 매개변수 및 설명
매개변수 설명
time_expr time 유형의 표현식입니다.
date_time_mask timetostring 함수의 출력 형식을 결정하는 날짜/시간 마스크입니다.
다음 예제는 시스템 시간을 문자열로 변환합니다. 문자열은 지정된 날짜/시간 마스크를 사용하여 형식화됩니다.
timetostring (systemtime(), "mm/dd/yyyy hh:tt:ss am")
위의 예제에서 systemtime()이 1985년 7월 1일 오후 12시 45분에서 6초를 지난 경우, 문자열 출력은 다음과 같습니다.
7/1/1985 12:45:06 pm

systemtime() 함수에 대한 정보를 참조하십시오.

stringtotime

이 함수는 지정된 형식을 사용하여 문자열을 시간으로 변환합니다. 다음 구문을 사용하십시오.
stringtotime (string_expr, date_time_mask)
각 항목에 대한 설명은 다음과 같습니다.
표 12. stringtotime 함수의 매개변수 및 설명
매개변수 설명
string_expr string 유형의 표현식입니다.
date_time_mask 변환에 사용할 시간 형식을 지정하는 날짜/시간 마스크입니다.
다음 예제에서 HostTime은 문자열 변수입니다.
stringtotime (HostTime, "mon. dd, yyyy hh:tt:ss am")
다음과 같은 경우,
HostTime = "Jul. 1, 1985 12:45:06 pm"
결과는 1985년 7월 1일 오후 12:45분 6초와 같은 시간 값이 됩니다.

encode, decode

해당 함수는 컨텐츠를 위장하기 위해 문자열을 의미 없는 문자열로 변환합니다. encode 및 decode는 모두 동일한 워크플로우에 있어야 합니다.

decode 함수는 인코드된 다중 문자열을 포함하는 문자열 표현식을 변환하는 데 사용할 수 있습니다.
encode (string_expr)

decode (string_expr)
각 항목에 대한 설명은 다음과 같습니다.
표 13. decode 및 encode 함수의 매개변수 및 설명
매개변수 설명
string_expr string 유형의 표현식입니다. 문자열은 리터럴이 아니어야 합니다.


마지막 업데이트 날짜: 2015년 10월
bpfe012.htm

© Copyright IBM Corp. 2015.