Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
Comentário: Acrescentar observações importantes ao comportamento da função

...

Portuguese

Pagetitle
StrTokArr
StrTokArr

Função: StrTokArr

Retorna um array, de acordo com os dados passados como parâmetro à função.
Desta forma, a função receberá uma string e um caracteruma sequência de um ou mais caracteres, que representa um separador, para toda string que encontraronde cada porção da string entre separadores será um elemento do array retornado.

StrTokArr ( < cValue>, < cToken> , [lEmptyStr] ) --> aRet

 

NomeTipoDescriçãoObrigatórioReferência
cValueCaracterIndica a string que será separada, conforme o parâmetro cToken.X 
cTokenCaracterIndica o caracter ou sequencia de caracteres ( Token ) que será utilizado como separador na string do informada no parâmetro cValue.X 
lEmptyStr

Lógico

Indica se elementos vazios também devem ser retornados. Valor default = .F. ( ** Disponível em build superior a 7.00.121227P )  

 

aRet
    (vetor)
  • Retorna um array de caracteres que representa a string passada como parâmetro.
  • Caso informado em cValue uma string que contenha uma ou mais ocorrências de caractere CHR(0), a string será considerada até o último caractere antes da primeira ocorrência de CHR(0).
#DEFINE CRLF Chr(13)+Chr(10)
User Function Exemplo()
//+----------------------------------------------------------------------------+
//|Exemplifica o uso da função StrTokArr |
//|Depende da função varinfo() do framework do ERP |
//|O resultado com o retorno da função será gerado no log de console |
//+----------------------------------------------------------------------------+
// comportamento default, ignora elementos vazios
varinfo("a1",strtokarr("A," ,",")) //retorna {"A"}
varinfo("a2",strtokarr(",B" ,",")) //retorna {"B"}
varinfo("a3",strtokarr("," ,",")) //retorna {}
varinfo("a4",strtokarr("A,,B" ,",")) //retorna {"A","B"}
varinfo("a5",strtokarr("A,,,B" ,",")) //retorna {"A","B"}
// Comportamento quando informando 3o parametro = .t. 
varinfo("b1",strtokarr("A," ,",",.T.)) //retorna {"A",""}
varinfo("b2",strtokarr(",B" ,",",.T.)) //retorna {"","B"}
varinfo("b3",strtokarr("," ,",",.T.)) //retorna {"",""}
varinfo("b4",strtokarr("A,,B" ,",",.T.)) //retorna {"A","","B"}
varinfo("b5",strtokarr("A,,,B" ,",",.T.)) //retorna {"A","","","B"}
MsgInfo("Verifique o resultado no log de console.", "StrTokArr - Exemplo")
Return

 

Advanced Protheus 6.09 , Advanced Protheus 7.10 , Microsiga Protheus 8.11 , Protheus 10, Protheus 11