Histórico da Página
Composition Setup |
---|
import.css=/download/attachments/3279126062824/newLayouttecnologia.css |
Portuguese |
Pagetitle |
---|
...
|
|
Retorna um array, de acordo com os dados passados como parâmetro à função. Desta forma, a função receberá uma string e uma sequência de um ou mais caracteres, que representa um separador, onde cada porção da string entre separadores será um elemento do array retornado.
Sintaxe
Bloco de código | ||
---|---|---|
| ||
StrTokArr( <cValue> cValue >,< cToken> , [lEmptyStr] ) --> aRet < cToken > )
|
Parâmetros
Nome | Tipo | Descrição | Obrigatório | Referência |
---|---|---|---|---|
cValue |
...
caractere | Indica a string que será separada. | X |
|
cToken |
...
caractere | Indica |
...
um ou |
...
mais caracteres (Token) que |
...
serão utilizados como separadores. | X |
|
...
Retorno
...
Lógico
...
Nome | Tipo | Descrição |
---|---|---|
aRet | vetor |
...
Retorna um array de caracteres que representa a string passada como parâmetro. |
...
...
Observações
- Cada caracter de cToken é um separador diferente. Para utilizar uma sequência de caracteres como separador, utilize a função StrTokArr2.
- Caso seja informado em cValue uma string que contenha uma ou mais ocorrências de caractere
...
- ASCII 0
...
- , a string será considerada até o último caractere antes da primeira ocorrência de
...
- ASCII 0
...
- .
Exemplos
Bloco de código | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
#DEFINE CRLF Chr(13)+Chr(10) User userFunction functionExemplo() //+----------------------------------------------------------------------------+ //|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." tokarr() Local cMessage := "", cValue := "" Local nI := 0, nJ := 0 Local aArray := Array( 6, 2 ) aArray[1][1] := "A1" aArray[1][2] := StrTokArr( "A,", "," ) aArray[2][1] := "A2" aArray[2][2] := StrTokArr( ",B", "," ) aArray[3][1] := "A3" aArray[3][2] := StrTokArr( ",", "," ) aArray[4][1] := "A4" aArray[4][2] := StrTokArr( "A,,B", "," ) aArray[5][1] := "A5" aArray[5][2] := StrTokArr( "A,,,B", "," ) aArray[6][1] := "A6" aArray[6][2] := StrTokArr( "A,B-C", ",-" ) for nI := 1 to Len( aArray ) cMessage += ( aArray[nI][1] + " --- " ) for nJ := 1 to Len( aArray[nI][2] ) cValue := IIf( aArray[nI][2][nJ] == "", '""', aArray[nI][2][nJ] ) cMessage += IIf( nJ == 1, cValue, ", " + cValue ) next nJ cMessage += CRLF next nI return MsgInfo( cMessage, "StrTokArr - Exemplo" )Return |
Resultado do Exemplo
...
Abrangência
Advanced Protheus 6.09, Advanced Protheus 7.10, Microsiga Protheus 8.11, Protheus 10, Protheus 11, Protheus 12
...
Veja também
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas