Раздел Сокровищница |
Несколько функций для работы со строками. Они довольно простые, но может кому-нибудь пригодятся.
Разбивка строки в список и слияние списка строк |
1. Разбивка строки на подстроки с учетом заданного символа(строки) разделителя
Str - исходная строка, R - символ(строка) разделитель, в результате получается список TStrings найденных строк. function StrToArrays(str, r: string; out Temp: TStrings): Boolean; var j: integer; begin IF temp <> Nil then Begin temp.Clear; while str <> '' do Begin j := Pos(r,str); if j=0 then j := Length(str) + 1; temp.Add(Copy(Str,1,j-1)); Delete(Str,1,j+length(r)-1); End; Result:=True; End else Result:=False; end;
2. Слияние списка строк в одну строку с вставкой символа(строки)-разделителя
function ArrayToStr(str: TStrings; r: string): string; var i: integer; begin Result:=''; IF str = nil Then Exit; for i:= 0 to Str.Count-1 do Result := Result+Str.Strings[i]+r; end;
Дополнителльно по этой же теме
Cмотрите реализацию функций TStrings.GetCommaText и TStrings.SetTextStr в модуле Classes
Коллективное творчество нескольких авторов