打印本文 打印本文 关闭窗口 关闭窗口
做一个返回数组的函数(例子)
作者:武汉SEO闵涛  文章来源:敏韬网  点击数711  更新时间:2009/4/23 18:36:42  文章录入:mintao  责任编辑:mintao

type
  TArray = array of string;

procedure TrimChar(s:string;var sRet : TArray);
  function CountChar(s:string; c:char):integer;
  var
    i : integer;
  begin
    result := 0;
    for i := 1 to Length(s) do
      if s[i] = c then Inc(result);
  end;
var
  iPos : integer;
  i    : integer;

begin
  SetLength(sRet, CountChar(s, '''','''') + 1);
  iPos := Pos('''','''', s);
  i := 0;
  while iPos > 0 do
  begin
    sRet[i] := Copy(s, 1, iPos - 1);
    Delete(s, 1, iPos);
    iPos := Pos('''','''', s);
    Inc(i);
  end;
  sRet[i] := s;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
  sA : TArray;
  s  : string;
  i  : integer;
begin
  s := ''''abc,cd,mm,44'''';
  sA := nil;
  TrimChar(s, sA);
  for i := Low(sA) to High(sA) do
    Memo1.Lines.Add(sA[i]);
end;

打印本文 打印本文 关闭窗口 关闭窗口