Форум: "Основная";
Текущий архив: 2002.04.08;
Скачать: [xml.tar.bz2];
ВнизМастера, помогите с написанием функции удаления лишних пробелов в строке, Найти похожие ветки
← →
Alx2 (2002-03-27 08:27) [1]Удаляет подряд идущие пробелы, оставляя только один из них. Также удаляются все пробелы в начале и в конце.
Procedure DelSpaces(Var S: String);
Var K, L: Integer;
Begin
If S = "" Then exit;
L := 1;
While L <= Length(S) Do
Begin
If S[L] <> " " Then break;
inc(L);
End;
If L > Length(S) Then
Begin
SetLength(S, 0);
exit;
End;
If L > 1 Then
S[1] := S[L];
K := L + 1;
L := 1;
For K := K To Length(S) Do
Begin
If (S[L] <> " ") Or (S[K] <> " ") Then
Begin
inc(L);
S[L] := S[K];
End;
End;
If S[L] <> " " Then
SetLength(S, L) Else
SetLength(S, L - 1);
End;
Более наглядный, но и более тормозной вариант на основе Pos может выглядеть так:
While Pos(" ",S)>0 do StringReplace(S," "," ",[rfReplaceAll]);
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.04.08;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.01 c