GETTOK: Como Extrair uma Substring (Token)

Como:

Linguagens Disponíveis: Reporting, Maintain

A função GETTOK divide uma string de caracteres em substrings, chamadas tokens. Os dados devem incluir um caractere especial, chamado delimitador, ocorre na string e a divide em tokens. GETTOK exibe o token especificado pelo argumento token_number. GETTOK ignora os espaços à direita e à esquerda na string de caracteres fonte.

Por exemplo, suponha que você deseje extrair a quarta palavra de uma sentença. Neste caso, utilize o caractere de espaço para um delimitador e o número 4 para token_number. GETTOK divide a frase em palavras utilizando este delimitador e, em seguida, extrai a quarta palavra. Se a string não estiver dividida pelo delimitador, utilize a função PARAG para este propósito.


Topo da página

x
Sintaxe: Como Extrair uma substring (Token)
GETTOK(source_string, length, token#, 'delim', outlen, output)

onde:

source_string

Alfanumérico

É a string fonte da qual extrair o token.

comprimento

Inteiro

É o número de caracteres em source_string. Se este argumento for inferior ou igual a 0, a função retornará espaços.

token#

Inteiro

É o número do token a ser extraído. Se este argumento for positivo, os tokens serão contados da esquerda para a direita. Se este argumento for negativo, os tokens serão contados da direita para a esquerda. Por exemplo, -2 extrai o segundo token da direita. Se este argumento é 0, a função retorna espaços. Os tokens nulos à esquerda e à direita são ignorados.

'delim'

Alfanumérico

É o delimitador na string fonte entre aspas simples. Se especificar mais de um caractere, somente o primeiro caractere é usado".

Observação: No Dialogue Manager, para impedir que a conversão de um caractere de espaço delimitador (' ') em um zero de precisão dupla, inclua um caractere não numérico após o espaço (por exemplo, '%'). GETTOK utiliza apenas o primeiro caractere (o espaço) como um delimitador, enquanto o caractere extra (%) impede a conversão em precisão dupla.

outlen

Inteiro

É o número de caracteres na substring. Se este argumento for inferior ou igual a 0, a função retornará espaços. Se o token for maior do que este argumento, ele será truncado; se for menor, será preenchido com espaços à direita.

saída

Alfanumérico

É o nome do campo que contém o token ou o formato do valor de saída posto entre aspas simples. O delimitador não está incluído no token.

Leve em consideração que o delimitador não está incluído no token extraído.



Exemplo: Como Extrair um Token

GETTOK extrai o último token de ADDRESS_LN3 e armazena o resultado em LAST_TOKEN.

O delimitador é um espaço:

TABLE FILE EMPLOYEE
PRINT ADDRESS_LN3 AND COMPUTE
LAST_TOKEN/A10 = GETTOK(ADDRESS_LN3, 20, -1, ' ', 10, LAST_TOKEN);
AS 'LAST TOKEN,(ZIP CODE)'
WHERE TYPE EQ 'HSM';
END

A saída é:

                      LAST TOKEN
ADDRESS_LN3           (ZIP CODE)
-----------           ----------
RUTHERFORD NJ 07073   07073
NEW YORK NY 10039     10039
FREEPORT NY 11520     11520
NEW YORK NY 10001     10001
FREEPORT NY 11520     11520
ROSELAND NJ 07068     07068
JERSEY CITY NJ 07300  07300
FLUSHING NY 11354     11354

Information Builders