Показать сообщение отдельно
  #2  
Старый 01.04.2014, 14:44
Аватар для poli-smen
poli-smen poli-smen вне форума
Профессионал
 
Регистрация: 06.08.2012
Адрес: Кривой Рог
Сообщения: 1,791
Версия Delphi: Delphi 7, XE2
Репутация: 4415
По умолчанию

Цитата:
Сообщение от saylar_06
Товарищи! Помогите кодом (очень нужно) есть строка(которая постоянно меняется):

asduay123123:asjasdf342523:234234234:009034953sdf: 234234234

как мне вытаскивать постоянно третье и четвертое слово?

3: 234234234
4: 009034953sdf
Примерно так:
Код:
function NextWord(const Str: String; var Pos: Integer): Integer;
begin
  Result := Pos;
  Pos := PosEx(':', Str, Pos);
  if Pos = 0 then Pos := Length(Str) + 1;
  Inc(Pos);
  Result := Pos - Result;
end;

function GetWord(const Str: String; var Pos: Integer): String;
var
  Pos0: Integer;
begin
  Pos0 := Pos;
  Result := Copy(Str, Pos0, NextWord(Str, Pos) - 1);
end;


// Пример использования:
procedure TForm1.Button1Click(Sender: TObject);
var
  s: String;
  p: Integer;
begin
  s := 'asduay123123:asjasdf342523:234234234:009034953sdf: 234234234';

  p := 1; // Начинаем поиск слов с первого символа строки
  NextWord(s, p); // Пропускаем первое слово
  NextWord(s, p); // Пропускаем второе слово
  Memo1.Lines.Add(GetWord(s, p)); // Получаем третье слово
  Memo1.Lines.Add(GetWord(s, p)); // Получаем четвёртое слово
end;
Цитата:
Сообщение от saylar_06
Просидел почти два часа, пришел к этому...
.....
но все равно не работает
Ну самому интереснее и полезнее решать чем подсматривать уже готовое
Ответить с цитированием