var
i:string;
begin
i:='sdafssdfas||sdfadfsdfasdf||dsfadfasdf||';
end;
我想按||分割字符串,并把它们分别显示出来.如何实现呢?

解决方案 »

  1.   

    procedure Proc1(const s: string; List: Tstrings);
    var
      L, i: Integer;
      t: string;
    begin
      List.Clear;
      L := Length(s);
      while L > 0 do
      begin
        i := Pos('||', s);
        if i = 0 then
          i := L;
        L := L - i - 2;    t := Trim(Copy(s, 1, i - 1));
        if t <> '' then
          List.Add(t);
      end;
    end;
      

  2.   

    s1:=copy(i,1,10);
    s2:=copy(i,13,13);
    s3:=copy(i,28,10);
      

  3.   

    var
      s: TStrings;
      j: Integer;  s := TStringList.Create;
      ExtractStrings(['|'], [], PChar(i), s);
      for j := 0 to (s.Count - 1) do
        ShowMessage(s.Strings[j]);