ich enpfehle dir eine TStringList
TStrings ist ein verallgemeinerter Stringlistentyp .. das heisst, da stehen viele Strings drinn in vielen Zeilen angeprdnet ...

die sache sieht dann in etwa so aus ...

Code:
Procedure TForm1.Button1Click(Sender:TObject);
var myList:TStringList;
begin
myList:=TStringList.create; //Neues Object von TStringList erzeugen
myList.AddStrings(Memo1.Lines); //Daten uebertragen
//tu was immer du willst hier
myList.free; //Speicher des Objects wieder freigeben !!Wichtig!!
end;
Aber wofuer willst du eine Stringlist in deine eigenen Variablen speichern ? ... meistens braucht man das nicht ...

wenn du aber meinst, wie du auf die einzelnen Strings zugreifen kannst ... das geht folgendermassen ....

ein Object vom Typ TStrings hat zwei wichtige Eigenschaften ...
TStrings.Count gibt die Anzahl von Strings wieder, die darin gespeichert ist.
TStrings.Strings ist das Array der gespeicherten Strings. Dabei wird von 0 bis Count-1 indexiert.

Code:
Procedure TForm1.Button2Click(Sender:TObject);
var i:integer;
    s:String;
begin
for i:=0 to Memo1.Lines.Count-1 do
 begin
  s:=Memo1.Lines.Strings[i]; // s:=Memo1.Lines[i]; waere genau so richtig .. ist eine Abkuerzung
  //hier den String verarbeiten
  Memo1.Lines.Strings[i]:=s; // und gegebenenfalls zurueckschreiben
 end;
end;
Wenn du nur einen einzeiligen Text hast, ist es oft aber bequemer einen TEdit komponente zu nehmen ...

Den Text kannst du dann mit der eigenschaft TEdit.Text ansprechen ...
Code:
Procedure TForm1.Button3Click(Sender:TObject);
var s:String;
begin
 s:=Edit1.Text; //String holen ..
 // String verarbeiten
 Edit1.Text:=s; //String veraendert zurueckspeichern ?
end;
mehr gibts da eigentlich nicht zu sagen ^^