Intrinsic functions - Enterprise COBOL for z/OS 6.3.0
A função USUBSTR retorna uma substring dos dados em um argumento de item de dados de caracteres que contém dados UTF-8 ou UTF-16.
O tipo de função é alfanumérico, nacional ou UTF-8, dependendo da classe do argument-1.
- argument-1
- Deve ser da classe alfabética, alfanumérica, nacional ou UTF-8.
O argument-1 deve conter caracteres codificados UTF-8 ou UTF-16 válidos:
- Se o argument-1 for da classe alfabética, alfanumérica ou UTF-8, ele deverá conter dados UTF-8 válidos.
- Se o argument-1 for da classe nacional, ele deverá conter dados UTF-16 válidos.
- argument-2
- Deve ser um número inteiro maior que zero.
Representa a posição inicial de uma substring no argument-1.
- argument-3
- Deve ser um número inteiro maior ou igual a zero.
Representa o comprimento de uma substring no argument-1.
Nota:
A soma dos argument-2 e argument-3 menos um deve ser menor ou igual a ULENGTH (argument-1).
Suponha que o argument-1 seja alfabético ou alfanumérico, argument-2 = ne argumento 3 = m, o valor retornado seja um item alfanumérico que contenha m caracteres
UTF-8 a partir do argument-1, começando com o enésimo caractere UTF-8.
Suponha que argument-1 seja um item de dados nacional, argument-2 = ne argument-3 = m, o valor retornado seja um item nacional que contenha m caracteres UTF-16
a partir do argument-1, começando com o enésimo caractere UTF-16.
Exemplo 1
Se A é um item alfanumérico que contém o valor UTF-8 x'4BC3A4666572 '(' Käfer '), os valores retornados são os seguintes:
- USUBSTR(A 1 2) retorna x'4BC3A4' ('Kä')
- USUBSTR(A 2 1) retorna x'C3A4' ('ä')
- USUBSTR(A 2 2) retorna x'C3A466' ('äf')
- USUBSTR(A 3 2) retorna x'6665' ('fe')
Exemplo 2
Se B é um item nacional que contém o valor UTF-16 x'005400F6006200750072D858DC6B0073 '(' Töber ?? s '), os valores retornados são os seguintes:
- USUBSTR(B 1 2) retorna x'005400F6' ('Tö')
- USUBSTR(B 2 1) retorna x'00F6' ('ö')
- USUBSTR(B 2 2) retorna x'00F60062' ('öb')
- USUBSTR(B 3 2) retorna x'00620075' ('be')
- USUBSTR(B 5 2) retorna x'0072D858DC6B' ('r??')
- USUBSTR(B 6 2) retorna x'D858DC6B0073' ('??s')
Exemplo 3
Se o argumento 1 for um item codificado em UTF-8 e o argumento UTF-8 contiver caracteres compostos, os caracteres combinados serão contados individualmente.
Por exemplo, quando codificado em UTF-8, o caractere Unicode ä pode ser x'C3A4 'ou x'61CC88'.
Com um dos caracteres UTF-8 no argumento-1, os valores retornados da função USUBSTR são diferentes.
Veja a tabela a seguir para detalhes.
Valores Retornados da Função USUBSTR
argument-1 |
Codificação Unicode |
Codificação UTF-8 |
Valores retornados da função USUBSTR |
C = äK |
U+00E4 + U+004B(forma pré-composta, letra minúscula latina a com diérese + letra maiúscula latina K |
x'C3A44B' (äK) |
USUBSTR (C 1 1) retorna x'C3A4' (ä) USUBSTR (C 2 1) retorna x'4B' (K) USUBSTR (C 1 2) retorna x'C3A44B' (äK) |
U+0061 + U+0308 + U+004B(decomposição canônica, letra minúscula latina a + diaerese combinada +
letra maiúscula latina K) |
x'61CC884B' (äK)
|
USUBSTR (C 1 1) retorna x'61' (a) USUBSTR (C 2 1) retorna x'CC88' (¨) USUBSTR (C 1 2) retorna x'61CC88' (ä) USUBSTR (C 1 3) returns x'61CC884B' (äK) |
© Copyright IBM Corp.