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> ) --> 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
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 function 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] cTextArr := " Primeiro;Segundo;Terceiro"aRetA4" aArray[4][2] := StrTokArr(cTextArr,";") // Resultado: aRet[1]="Primeiro" / aRet[2]="Segundo" / aRet[3]="Terceiro" "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" )
|
Resultado do Exemplo
Abrangência
Advanced Protheus 6.09, Advanced Protheus 7.10, Microsiga Protheus 8.11, Protheus 10, Protheus 11, Protheus 12