Jak pobrać dowolny znak łańcucha

Adam Boduch

Łańcuchy w Delphi to tablice znaków, tak więc do poszczególnego znaku można odwołać się przy pomocy znaków [ oraz ]. Tak więc chcąc pobrać pierwszy znak w łańcuchu, można posłużyć się takimi instrukcjami:

const
  Foo = 'Hello World';
begin
  ShowMessage(Foo[1]); // wyświetli 'H'
end;

Analogicznie można pobrać ostatni znak łańcucha, dla przykładu - niech to będzie ostatni znak tekstu wpisanego w komponencie TEdit. Właściwość Text, komponentu TEdit umożliwia odczytanie/nadanie tekstu wpisanego w kontrolce. Długość łańcucha możemy pobrać przy pomocy funkcji Length więc odczytanie ostatniego znaku wpisanego w kontrolce nie powinno być trudne:

ShowMessage('Ostatni znak wpisany w kontrolce TEdit to: ' + Edit1.Text[Length(Edit1.Text)]);

Jeżeli chcemy pobrać więcej niż 1 znak z łańcucha, musimy posłużyć się funkcją Copy:

  ShowMessage('Ostatnie 4 znaki wpisane w kontrolce TEdit to: ' +
    Copy(Edit1.Text, Length(Edit1.Text) - 3, 4));
end;

Zobacz też:

FAQ

3 komentarzy

machiav: poprawilem Twoj kod, poniewaz w pewnym momencie byl toszke niedorzeczny i bez sensowny (dodatkowo zmodyfikowalem kod tak aby odpowiadal zasadom ustalonym w tekscie "Zasady redagowania artykulow").

Ale poza tym to fajnie ze wpadles na ten pomysl dodania do wskazowki informacji jak pobrac wiecej niz 1 znak przy pomocy funkcji Copy :)

A jak pobrać ostatnie 4 znaki?

A jak zmienić np. pierwszy albo piąty znak ?