(原创)将字符串中所有非空的连续字符串列出来

procedure TForm1.DelimitStr(Str: String; var DeskString: TStrings);
var
  Temp: string;
  I, J, NoNull: Integer;
begin
  NoNull := 0;
  Temp := Str;
  if Str = '' then
    Exit;

  while NoNull <> Length(Temp) do
  begin
    NoNull := 0;
    for I := 1 to Length(Temp) do
    begin
      if (Ord(Temp[I]) = 32) then
      begin
        DeskString.Add(Copy(Temp, 1, I - 1));
        Temp := Trim(Copy(Temp, I, Length(Temp)));
        Break;
      end
      else
        Inc(NoNull);
      if NoNull = Length(Temp) then
      begin
        DeskString.Add(Temp);
        Break;
      end;
    end;
  end;


end;

posted @ 2009-01-07 11:50  谭志宇  阅读(263)  评论(0编辑  收藏  举报