• 0
acss

quebra de strings

Question

Quebra de strings

Saudações a todos

Usando a procedure abaixo, gostaria de pegar N variaveis ,s1,s2,s3..... que vai vir do edit, pra poder usar ela em outros lugares , mas não sei quantas variaveis terá pela dependência do que estiver escrito no edit pra mais ou prá menso para dar a quebras.

Mas se o edit estiver vazio, ou não tiver quebras suficientes pra preenceher qualquer uma das variaveis S1,S2 .... ou nenhumas delas,  conto com a juda de vocês  para uma orientação do que poderia ser feito pra não dar erro de execução ou mensagem de erro no programa,

 

Agradeçido

Procedure Quebra( Input: String; Separador: String; Var ListString: AStrings );
Var
   Resultado: TStringList;
   idLst: Integer;
Begin
   // Previne que exista elementos maiores que Resultado.Count
   // uma vez que se trata de variável externa.
   SetLength( ListString, 0 );

   Resultado := TStringList.Create;
   Try
      // Possibilita que seja utilizada uma sequencia de caracteres como delimitador
      Resultado.Text := StringReplace( Input, Separador, #13#10, [ rfReplaceAll ] );

      // Define novo tamanho para a matriz
      SetLength( ListString, Resultado.Count );

      For idLst := 0 To Pred( Resultado.Count ) Do
         ListString[ idLst ] := Resultado[ idLst ];
   Finally
      Resultado.Free;
   End;

End;

procedure TForm1.Button1Click(Sender: TObject);

Var
   aTexto: aStrings;
 s1,s2,s3,s4,s5...... :string;
Begin
   Quebra( Edit1.Text , ' ', aTexto );

s1:= aTexto[ 0 ];
s2:= aTexto[ 1 ];
s3:= aTexto[ 2 ];
..........

End;

Share this post


Link to post
Share on other sites

2 answers to this question

Recommended Posts

  • 0

Saudações Leonarn Persan, muito agradecido a você

é realmente complicado porque não sei a quantidade que virá de variáveis e essa é apena um dos problemas, ainda tenho que dar um valor de 0 a 9 para  cada letra, que significa o tanto de células que cada letra ocupara

estou trabalhando com umas ideias aqui, vai dar muito  trabalho, mas sou persistente e vou conseguir , nem se tiver que copiar letrinha por letrinha e prenchendo manualmente a  mão, kk

Eu vou lá dar uma olhada no  Link que você passou mais já ti agradecendo antecipademente por sua ajuda

 

Abraços, tudo de bom

 

 

 

 

 

 

 

 

 

 

 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.