Code: |
{ **** UBPFD *********** by delphibase.endimus.com **** >> Делит строку аStr на три строки St1,St2,St3 длиной Long1,Long2,Long3
Делит строку аStr на три строки St1,St2,St3 длиной Long1,Long2,Long3 соответственно или меньше в зависимости от длины исходной строки.
Зависимости: ??? Автор: Сергей, Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра., Краснодар Copyright: VIP BANK
***************************************************** }
procedure DivPart(aStr: string; var St1, St2, St3: string; Long1, Long2, Long3: byte); var i, pos, Long: byte; begin St1 := ''; St2 := ''; St3 := ''; aStr := Trim(aStr); Long := Length(aStr); if Long <= Long1 then begin St1 := aStr; Exit end; Pos := Long1; for i := 1to Long1 + 1do if aStr[i] = ' 'then Pos := i; St1 := TrimRight(Copy(aStr, 1, Pos)); Delete(aStr, 1, Pos); aStr := TrimLeft(aStr); Long := Length(aStr); if Long <= Long2 then begin St2 := aStr; Exit end; Pos := Long2; for i := 1to Long2 + 1do if aStr[i] = ' 'then Pos := i; St2 := TrimRight(Copy(aStr, 1, Pos)); St3 := Trim(Copy(aStr, Pos + 1, Long3)) end; |
©Drkb::00841
Code: |
{ **** UBPFD *********** by delphibase.endimus**** >> Разбивка строки на подстроки с использованием заданного разделителя
Параметры: Str: WideString - Строка для разбивки Delimiter: String - Разделитель подстрок с строке Str Результат: TStringList: Список найденных подстрок
Зависимости: System, Sysutils, Classes Автор: Stoma, stoma @ bitex.bg Copyright: Собственная разработка
***************************************************** }
function Tokenize(Str: WideString; Delimiter: string): TStringList; var tmpStrList: TStringList; tmpString, tmpVal: WideString; DelimPos: LongInt; begin tmpStrList := TStringList.Create; TmpString := Str; DelimPos := 1; while DelimPos > 0do begin DelimPos := LastDelimiter(Delimiter, TmpString); tmpVal := Copy(TmpString, DelimPos + 1, Length(TmpString)); if tmpVal <> ''then tmpStrList.Add(UpperCase(tmpVal)); Delete(TmpString, DelimPos, Length(TmpString)); end; Tokenize := tmpStrList; end; Пример использования:
function TForm1.GetDirNames(FullPath: string): TStringList; begin GetDirNames := Tokenize(FullPath, '\'); end; |
Code: |
procedure Explode(var a: arrayofstring; Border, S: string); var S2: string; i: Integer; begin i := 0; S2 := S + Border; repeat a[i] := Copy(S2, 0,Pos(Border, S2) - 1); Delete(S2, 1,Length(a[i] + Border)); Inc(i); until S2 = ''; end;
// How to use it: // Und hier ein Beispiel zur Verwendung:
procedure TForm1.Button1Click(Sender: TObject); var S: string; A: arrayofString; begin S := 'Ein Text durch Leerzeichen getrennt'; SetLength(A, 10); Explode(A, ' ', S); ShowMessage(A[0] + ' ' + A[1] + ' ' + A[2] + ' ' + A[3] + ' ' + A[4]); end;
|
Просьба писать ваши замечания, наблюдения и все остальное,
что поможет улучшить предоставляемую информацию на этом сайте.
ВСЕ КОММЕНТАРИИ МОДЕРИРУЮТСЯ ВРУЧНУЮ, ТАК ЧТО СПАМИТЬ БЕСПОЛЕЗНО!