Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.10.15;
Скачать: CL | DM;

Вниз

Удаление всех пробелов из строки?   Найти похожие ветки 

 
-Gruo-   (2006-09-30 01:39) [0]

Привет!! Подскажите как удалить все пробелы из строки?


 
Германн ©   (2006-09-30 01:55) [1]


> -Gruo-   (30.09.06 01:39)
>
> Привет!! Подскажите как удалить все пробелы из строки?


var St : String;
St:=StringReplace(St," ","",[rfReplaceAll]);


 
Германн ©   (2006-09-30 02:01) [2]

Чтобы было ещё нагляднее
St:=StringReplace(St,#32,"",[rfReplaceAll]);


 
Джо ©   (2006-09-30 11:05) [3]

А если "руками" и без использования громоздких механизмов, то как-то так:

function StripSpaces (const Source: string): string;
var
 I,J: Integer;
begin
 SetLength (Result,Length(Source));
 J := 1;
 for I := 1 to Length(Source) do
 begin
   if Source[I] <> " " then
   begin
     Result[J] := Source[I];
     Inc (J);
   end;
 end;
 SetLength (Result,J-1);
end;


Ну, или, экономя на реаллокациях, так:

function StripSpaces (const Source: string): string;
var
 I,J,Len: Integer;
begin
 // Precompute result length
 Len := 0;
 for I := 1 to Length(Source) do
   if Source[I] <> " " then
     Inc(Len);
 SetLength (Result,Len);

 J := 1;
 for I := 1 to Length(Source) do
 begin
   if Source[I] <> " " then
   begin
     Result[J] := Source[I];
     Inc (J);
   end;
 end;
end;


 
Leonid Troyanovsky ©   (2006-09-30 11:35) [4]


> Джо ©   (30.09.06 11:05) [3]

> Ну, или, экономя на реаллокациях, так:


Для экономии, IMHO, procedure StripSpaces(var s: String).

--
Regards, LVT.


 
Джо ©   (2006-09-30 12:05) [5]

> [4] Leonid Troyanovsky ©   (30.09.06 11:35)
> Для экономии, IMHO, procedure StripSpaces(var s: String)
> .

Именно так. Зависит, конечно, от требования к конкретному интерфейсу, предоставляемому функцией/процедурой.



Страницы: 1 вся ветка

Текущий архив: 2006.10.15;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.123 c
2-1159532700
zac
2006-09-29 16:25
2006.10.15
Зарисовка сегмента круга


2-1159542104
DROWSY
2006-09-29 19:01
2006.10.15
Как запретить многократный запуск процесса?


2-1159533557
KyRo
2006-09-29 16:39
2006.10.15
Открывается ли файл


3-1155642423
tytus
2006-08-15 15:47
2006.10.15
Create Trigger Before Insert


2-1158667148
[PSIH]
2006-09-19 15:59
2006.10.15
Insufficient memory for this operation