用delphi模仿.net的string.split

工作中偶尔会用到delphi,由于不是很熟,这次写了一个函数模仿。net中的string.split,怕以后忘记,在这保留一份。

function Split(str, split: WideString): TStringList;
var
    index, p, sp_len: Integer;
begin
    sp_len := Length(split);
    Result := TStringList.Create;
    p := 1;
    for index := 1 to Length(str) do
    if copy(str, index, sp_len) = split then
    begin
       Result.Add(copy(str, p, index - p));
       p := index + sp_len;
    end;
    Result.Add(copy(str, p, index - p));
end ;

posted @ 2006-06-07 10:37  81  阅读(934)  评论(0编辑  收藏  举报