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( 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",, "," )) //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." 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