LANÇAMENTO! Curso de Delphi 2009, clique aqui e confira!
Código
type
//Tipo necessário para que a função split utilize tipos complexos - simplesmente um array dinâmico
arrRetorno = array of string;
Em seguida, declare a função como public (se quiser, claro) e digite seu corpo:
// Recebe uma string como input e a parte em um array. Cada ocorrência de splitChar é o separador
// de um item do array.
function TfrmPrincipal.split(input, splitChar: string): arrRetorno;
var
inputLength, i, arrayDims: integer;
inputAux : string;
begin
inputLength := Length(input);
inputAux := '';
arrayDims:= 0;
for i := 1 to inputLength do
begin
if input[i] = splitChar then
arrayDims := arrayDims + 1;
end;
setLength(result, arrayDims+1);
arrayDims:= 0;
for i := 1 to inputLength do
begin
if input[i] <> splitChar then
inputAux := inputAux + input[i]
else
begin
result[arrayDims] := inputAux;
arrayDims := arrayDims + 1;
inputAux := '';
end;
if i >= inputLength then
begin
result[arrayDims] := inputAux;
arrayDims := arrayDims + 1;
inputAux := '';
end;
end;
end;
Para utilizar, basta declarar uma variável como sendo do tipo arrRetorno, e populá-la com a função:
var
arrayAgencias : arrRetorno;
begin
arrayAgencias := split('1,2,3',','); //Retorna um array assim: [1,2,3]
end;
Planeta Delphi - www.planetadelphi.com.br - Todos os direitos reservados | Copyright 2001-2009
LANÇAMENTO! Curso de Delphi 2009, clique aqui e confira!