![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
разбитие строки на по подсктроки через нужный сепаратор [D7]
aka © (2010-08-04 12:27:00)разбитие строки на по подстроки через нужный сепаратор в дин. массив
Нужно для разбора и загрузки в базу.
Посоветуйте готовое решение.
Игорь Шевченко (2010-08-04 14:52:00) [1]
procedure StrBreakApartToArray(const Source, Delimeter: string;
var Parts: TStringArray; IgnoreEmptyTail: boolean = false);
var
curPos: Integer;
curStr: string;
begin
SetLength(Parts, 0);
if Length(Source) = 0 then
Exit;
CurStr:= Source;
repeat
CurPos:= AnsiPos(Delimeter, CurStr);
if CurPos > 0 then begin
SetLength(Parts, Length(Parts)+1);
Parts[Length(Parts)-1] := Copy(CurStr, 1, Pred(CurPos));
CurStr:= Copy(CurStr, CurPos+Length(Delimeter),
Length(CurStr)-CurPos-Length(Delimeter)+1);
end else if not IgnoreEmptyTail or (Length(CurStr) > 0) then
begin
SetLength(Parts, Length(Parts)+1);
Parts[Length(Parts)-1] := CurStr;
end;
until CurPos=0;
end;
KilkennyCat (2010-08-04 14:12:00) [2]
> anonims (04.08.10 12:49) [1]
это не готовое решение. это - программирование.
anonims (2010-08-04 12:49:00) [3]s:=TstringLit.Create;
s.delimiter:='|';
s.delimetedText:='1|2 |5 |';