Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.10.2011, 22:13   #1
Skeptic
Новичок
Джуниор
 
Регистрация: 10.10.2011
Сообщений: 3
Печаль как в Delphi скопировать весь текст от нужного символа до конца строки ??

гуглил очень долго прежде чем спросить,но мозг уже понемножку закипает, поетому приходится спрашивать. итак
допустим есть Memo1 и там есть такой текст :

ferrari : megosupercar
zaporozhets : polnui_otstoi

так вот! как скопировать только часть текста megosupercar??? чтобы не зацепляло следущую строку ??

я так понимаю будет что-то вида

procedure TForm1.Button3Click(Sender: TObject);
var
copyresult : string;

begin
copyresult:=Copy(Memo1.Lines.Text, Pos(':',Memo1.Lines.Text),ВОТ_ЗДЕСЬ _ВОТ_НУЖНО_НАПИСАТЬ_ЧТО-ТО_ЧТОБЫ_СЧИТЫВАЛО_ТОЛЬКО_ДО_КОНЦА_ СТРОКИ);
end;

буду оч. благодарен за совет )
Skeptic вне форума Ответить с цитированием
Старый 10.10.2011, 22:19   #2
TinMan
Форумчанин
 
Аватар для TinMan
 
Регистрация: 05.09.2011
Сообщений: 869
По умолчанию

ВОТ_ЗДЕСЬ _ВОТ_НУЖНО_НАПИСАТЬ_ЧТО-ТО_ЧТОБЫ_СЧИТЫВАЛО_ТОЛЬКО_ДО_КОНЦА_ СТРОКИ
=
Length(Memo1.Lines.Text)-Pos(':',Memo1.Lines.Text)+1
Предпочитаю на "ты".
TinMan вне форума Ответить с цитированием
Старый 10.10.2011, 22:28   #3
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

ну, если решение "в лоб", то
можно так
Код:
var copyresult : string;
  p1 : integer;
begin
  p1 := Pos(':', Memo1.Lines.Text);
  if p1>0 then begin
    copyresult := Copy(Memo1.Lines.Text, p1+1, Length(Memo1.Lines.Text)-p1);
    if Pos(#13,copyresult)>1 then
      copyresult := Copy(copyresult, 1, Pos(#13,copyresult)-1);
  end;
а если воспользоваться функцией PosEx то можно и в одну строчку решить задача (оставляю в качестве домашнего задания! )

p.s. не смущает, что Вы найдёте только ПЕРВОЕ двоеточие?! Остальные строчки точно обрабатывать не собираетесь?!
Serge_Bliznykov вне форума Ответить с цитированием
Старый 10.10.2011, 22:28   #4
Skeptic
Новичок
Джуниор
 
Регистрация: 10.10.2011
Сообщений: 3
Печаль

эммм.....
вобщем если делаю так

procedure TForm1.Button3Click(Sender: TObject);
var
copyresult : string;

begin
copyresult:=Copy(Memo1.Lines.Text, Pos(':',Memo1.Lines.Text),Length( Memo1.Lines.Text)-Pos(':',Memo1.Lines.Text)+1 ;

end;


то copyresult всеравно захватывает 2ую строчку...((((
тоесть
copyresult = ferrari : megosupercar
zaporozhets : polnui_otstoi


толи я такой криворукий, толи код не правильный...
Skeptic вне форума Ответить с цитированием
Старый 10.10.2011, 22:36   #5
Skeptic
Новичок
Джуниор
 
Регистрация: 10.10.2011
Сообщений: 3
Хорошо

Serge_Bliznykov
аааа, спасибо большое!!
это мне помогло)))!!!!

var copyresult : string;
p1 : integer;
begin
p1 := Pos(':', Memo1.Lines.Text);
if p1>0 then begin
copyresult := Copy(Memo1.Lines.Text, p1+1, Length(Memo1.Lines.Text)-p1);
if Pos(#13,copyresult)>1 then
copyresult := Copy(copyresult, 1, Pos(#13,copyresult)-1);
end;

ура)!
Skeptic вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как скопировать функцию эксель на весь столбец? Bendebej Microsoft Office Excel 2 08.06.2015 21:28
Как поставить точки до конца строки? Molotoklk Microsoft Office Word 6 04.10.2011 17:08
Как скопировать текст с Edit1 в Edit2 amator_roma Компоненты Delphi 14 03.12.2010 12:32
Как скопировать текст с Edit1 в Edit2 amator_roma Помощь студентам 2 02.12.2010 15:44
Вывод символа перевода строки из МЕМО в текст. файл (Delphi) ChEaTeR-abc Помощь студентам 5 02.07.2010 20:43