:: MVP ::
|
|
:: RSS ::
|
|
|
Как удалить пробелы, обрамляющие строку?
// Способ первый
procedure TForm1.Button1Click(Sender: TObject);
var
s: string;
begin
s := ' Тестовая строка ';
Edit1.Text := Trim( s );
end;
// Способ второй
procedure TForm1.Button1Click(Sender: TObject);
var
s: string;
begin
s := ' Тестовая строка ';
while s[1] = ' ' do
Delete( s, 1, 1 );
while s[Length( s )] = ' ' do
Delete( s, Length( s ), Length( s ) );
Edit1.Text := s;
end;
|
Как удалить пробелы, обрамляющие строку слева?
// Способ первый
procedure TForm1.Button1Click(Sender: TObject);
var
s: string;
begin
s := ' Тестовая строка ';
Edit1.Text := TrimLeft( s );
end;
// Способ второй
procedure TForm1.Button1Click(Sender: TObject);
var
s: string;
begin
s := ' Тестовая строка ';
while s[1] = ' ' do
Delete( s, 1, 1 );
Edit1.Text := s;
end;
|
Как удалить пробелы, обрамляющие строку справа?
// Способ первый
procedure TForm1.Button1Click(Sender: TObject);
var
s: string;
begin
s := ' Тестовая строка ';
Edit1.Text := TrimRight( s );
end;
// Способ второй
procedure TForm1.Button1Click(Sender: TObject);
var
s: string;
begin
s := ' Тестовая строка ';
while s[Length( s )] = ' ' do
Delete( s, Length( s ), Length( s ) );
Edit1.Text := s;
end;
|
Как удалить из строки все пробелы?
// Способ первый
procedure TForm1.Button1Click(Sender: TObject);
var
s: string;
begin
s := ' Тестовая строка ';
while Pos( ' ', s ) > 0 do
Delete( s, Pos( ' ', s ), 1 );
Edit1.Text := s;
end;
// Способ второй
procedure TForm1.Button1Click(Sender: TObject);
var
s: string;
begin
s := ' Тестовая строка ';
s := StringReplace( s, ' ', '', [rfReplaceAll] );
Edit1.Text := s;
end;
|
Как получить индекс первого интересующего нас символа в строке?
// Способ первый
procedure TForm1.Button1Click(Sender: TObject);
var
s: string;
begin
s := ' Тестовая строка ';
Caption := IntToStr( Pos( 'Т', s ) );
end;
// Способ второй
procedure TForm1.Button1Click(Sender: TObject);
var
s: string;
i: integer;
begin
s := ' Тестовая строка ';
for i := 1 to Length( s ) do
if s[i] = 'Т' then
begin
Caption := IntToStr( i );
Break;
end;
end;
|
Как получить индекс последнего интересующего нас символа в строке?
// Способ первый
procedure TForm1.Button1Click(Sender: TObject);
var
s: string;
begin
s := ' Тестовая строка ';
Caption := IntToStr( LastDelimiter( 'а', s ) );
end;
// Способ второй
procedure TForm1.Button1Click(Sender: TObject);
var
s: string;
i: integer;
begin
s := ' Тестовая строка ';
for i := Length( s ) downto 1 do
if s[i] = 'а' then
begin
Caption := IntToStr( i );
Break;
end;
end;
|
Как определить длинну строки?
procedure TForm1.Button1Click(Sender: TObject);
var
s: string;
begin
s := ' Тестовая строка ';
Caption := IntToStr( Length( s ) );
end;
|
Как сделать бегущую строку?
// Способ первый
var
Form1: TForm1;
Str: string = ' Добро пожаловать на сайт http://decoding.narod.ru ';
implementation
{$R *.dfm}
procedure TForm1.Timer1Timer(Sender: TObject);
begin
Form1.Caption := Str;
Str:= Copy( Str, 2, Length( Str )-1 ) + Str[1];
end;
// Способ второй
procedure TForm1.Timer1Timer(Sender: TObject);
var
i: Integer;
s: string;
begin
s := Caption;
for i := 1 to Length( s )-1 do
s[i] := Caption[i+1];
s[Length( s )] := Caption[1];
Caption := s;
end;
|
Как заменить подстроку в строке?
// Способ первый
// Можно воспользоваться функцией StringReplace
// Первый параметр - строка, в которой пройзводится замена
// Второй параметр - подстрока, которую нужно заменить
// Третий параметр - строка, которой нужно заменить подстроку
// Последний параметр - флаги:
// rfReplaceAll - заменить все найденные подстроки
// rfIgnoreCase - игнорировать регистр букв
procedure TForm1.Button1Click(Sender: TObject);
begin
// Caption = 'Form1'
Caption := StringReplace( Caption, '1', '!', [rfReplaceAll,rfIgnoreCase] );
end;
// Спрсоб второй
var
Form1: TForm1;
s: string = '111 222 333 444 555';
implementation
function ReplaceStr( const S, Srch, Replace: string ): string;
var
i: integer;
Source: string;
begin
Source := S;
Result := '';
repeat
i := Pos( Srch, Source );
if i > 0 then
begin
Result := Result + Copy( Source, 1, i-1 ) + Replace;
Source := Copy( Source, i+Length( Srch ), MaxInt );
end
else
Result := Result + Source;
until i <= 0;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
ShowMessage( ReplaceStr( s, ' ', '-' ) );
end;
|
При использовании материала - ссылка на сайт обязательна
|
|