Einzelnen Beitrag anzeigen

Popov
(Gast)

n/a Beiträge
 
#2

AW: Zahlen aus Memo auslesen

  Alt 31. Dez 2012, 15:58
Ich hab heute nicht die große Lust viel zu denken, aber hier mal etwas auf die Schnelle.

Wenn dein Text so aussieht:
Code:
12 34 5/6 7² 89
98 76 5% $4 23
34 78 45 67 12
dann könnte das klappen. Ist ein sehr simpler Code. Sollten da noch Wörter dazwischen sein, mußt du sie filtern:

Delphi-Quellcode:
{Ungeordnete Liste in geordnete Liste umwandeln. Beispiel ungeordnete Liste:
12 34 5/6 7² 89
98 76 5% $4 23
34 78 45 67 12
}

procedure ZahlenListe(Liste: TStrings);
var
  sl1: TStringList;
  sl2: TStringList;
  i: Integer;
begin
  sl1 := TStringList.Create;
  try
    for i := 0 to Liste.Count - 1 do
    begin
      sl2 := TStringList.Create;
      try
        sl2.Delimiter := ' ';
        sl2.DelimitedText := Liste[i];
        sl1.AddStrings(sl2);
      finally
        sl2.Free;
      end;
    end;

    Liste.Clear;
    Liste.AddStrings(sl1);
  finally
    sl1.Free;
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  sl: TStringList;
  ArrayListe: array of String;
  i: Integer;
begin
  sl := TStringList.Create;
  try
    sl.AddStrings(Memo1.Lines);
    ZahlenListe(sl);
    SetLength(ArrayListe, sl.Count);

    for i := 0 to sl.Count - 1 do
      ArrayListe[i] := sl[i];
  finally
    sl.Free;
  end;

  for i := 0 to High(ArrayListe) do
    ShowMessage(ArrayListe[i]);
end;
  Mit Zitat antworten Zitat