Einzelnen Beitrag anzeigen

smartmod

Registriert seit: 11. Jul 2005
26 Beiträge
 
#1

Text an bestimmter Stelle splitten

  Alt 18. Apr 2006, 19:29
Hallo,

ich versuche, einen Text aus einem Memo an einer bestimmten Stelle zu splitten und dann den ersten Teil in die erste Spalte eines ListViews und den zweiten Teil in dessen zweite Spalte zu schreiben.

Der Text, mit dem es uA funktionieren soll ist folgender:

Zitat:
...
CDA102309/13 EMEA1
CDA102309/14 EMEA2
CDA102309/15 EMEA3
CDA102309/16 EMEA4
CDA102309/17 EMEA5
CDA102309/18 EMEA6
CDA102309/19 EMEA7
CDA102309/20 EMEA8
CDA102309/21 US1
CDA102309/22 US2
CDA102309/101 AL1
CDA102309/102 AL2
CDA102309/103 AL3
CDA102309/104 AL4
CDA102307/11 Generic Trade Taiwan
CDA102307/13 Generic Trade China
CDA102307/14 Generic Trade Hong Kong
CDA102307/31 Generic Trade Malaysia
CDA102307/32 Generic Trade Philippines
CDA102307/33 Generic Trade Netherlands
CDA102307/34 Generic Trade Italy
CDA102307/35 Generic Trade France
...
Der erste Teil (bis zum ersten Leerzeichen) soll in die erste Spalte, der Rest in die zweite.

Das funktioniert auch soweit ganz gut, allerdings trennt er bei den Werten ab "CDA102307/11 Generic Trade Taiwan" erst beim zweiten Leerzeichen.

Hier ist mein Quellcode:

Delphi-Quellcode:
var
  Form1: TForm1;
  i, j, Posi: Integer;
  S: String;
  found: Boolean;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
ListView1.Clear;
Posi := 1;

    for i := 0 to Memo1.Lines.Count-1 do

    begin
      found := false;
      S := Memo1.Lines.Strings[i];

      for j := 1 to length(S) do

      If not found then
      begin

        begin
          Posi := PosEx(Seperator.Text, S, Posi);
          If S[Posi] = Seperator.Text then
            begin
            found := true;
            end;
        end;

      ListView1.Items.Add;
      ListView1.Items[i].Caption := copy (S,1,Posi);
      ListView1.Items[i].SubItems.Add(copy (S,Posi+1,Length(S)-Posi));

      end;

    end;


end;
Kann mir jemand sagen, warum das so ist?
  Mit Zitat antworten Zitat