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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 04.02.2016, 12:43   #11
Dvoishnik
Форумчанин
 
Регистрация: 12.02.2011
Сообщений: 808
По умолчанию

Цитата:
Сообщение от Iron Monk Посмотреть сообщение
Код:
var
  i: Integer;
begin
  for i:= 0 to Memo1.Lines.Count - 1 do
  Memo1.Lines[i]:= Copy(Memo1.Lines[i], 1, Pos(',', Memo1.Lines[i]));
end;
Код:
привет, Вася!
привет, Вася!
привет, Вася!
привет, Вася!
если я правильно понял получится
Код:
привет
привет
привет
привет
а должно
Код:
привет
Терпение!Дежурный экстрасенс скоро свяжется с вами!
Dvoishnik вне форума Ответить с цитированием
Старый 04.02.2016, 12:49   #12
mitiay
Форумчанин
 
Регистрация: 16.01.2011
Сообщений: 288
По умолчанию

Всем спасибо!А как ускорить процесс если большое количество строк?Программа зависает
Или какнить прогресс бар поставить можно?
mitiay вне форума Ответить с цитированием
Старый 04.02.2016, 12:52   #13
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
Или какнить прогресс бар поставить можно?
Не можно, а нужно.
Покажи код, как сделал. И исходные данные для обработки. И условия задачи.
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 04.02.2016, 12:54   #14
mitiay
Форумчанин
 
Регистрация: 16.01.2011
Сообщений: 288
По умолчанию

procedure TForm1.Button2Click(Sender: TObject);
var
i: Integer;
begin
for i:= 0 to Memo1.Lines.Count - 1 do
Memo1.Lines[i]:= Copy(Memo1.Lines[i], 1, Pos(',', Memo1.Lines[i])- 1);
end;

Нужно просто все удалить после запятой

Последний раз редактировалось mitiay; 04.02.2016 в 12:58.
mitiay вне форума Ответить с цитированием
Старый 04.02.2016, 12:58   #15
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

В StringList делай, не будет зависать
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 04.02.2016, 13:00   #16
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
В StringList делай, не будет зависать
Это как написать! При правильной кривизне рук можно систему в BSOD завалить "хэллоу-вордом".
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 04.02.2016, 13:01   #17
Dvoishnik
Форумчанин
 
Регистрация: 12.02.2011
Сообщений: 808
По умолчанию

удалить все после первой запятой
Код:
var
  j,i: Integer;
  var StrList: TStringList;
begin
  StrList:=TStringList.Create;
  for i:= 0 to Memo1.Lines.Count - 1 do
  begin
   j:=Pos(',', Memo1.Lines[i])-1 ;
   if j>0 then
    Begin
     StrList.Add(Copy(Memo1.Lines[i], 1,j));
     break;
    end
      else StrList.Add(Memo1.Lines[i]);
  end;
  Memo1.Lines:= StrList;
end;
Цитата:
Сообщение от mitiay Посмотреть сообщение
procedure TForm1.Button2Click(Sender: TObject);
Код:
var
  i: Integer;
begin
  for i:= 0 to Memo1.Lines.Count - 1 do
  Memo1.Lines[i]:= Copy(Memo1.Lines[i], 1, Pos(',', Memo1.Lines[i])- 1);
end;
Нужно просто все удалить после запятой
я же написал как оно у вас будет работать.
Терпение!Дежурный экстрасенс скоро свяжется с вами!

Последний раз редактировалось Dvoishnik; 04.02.2016 в 13:10. Причина: опять все не так сделал все исправил
Dvoishnik вне форума Ответить с цитированием
Старый 04.02.2016, 13:07   #18
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Аффтар, я от тебя исходные данные дождусь или забить на это всё?
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 04.02.2016, 13:09   #19
mitiay
Форумчанин
 
Регистрация: 16.01.2011
Сообщений: 288
По умолчанию

Цитата:
Сообщение от Dvoishnik Посмотреть сообщение
удалить все после первой запятой
Код:
var
  j,i: Integer;
  var StrList: TStringList;
begin
  StrList:=TStringList.Create;
  for i:= 0 to Memo1.Lines.Count - 1 do
  begin
   j:=Pos(',', Memo1.Lines[i])-1 ;
   if j>0 then
    begin
     StrList.Add(Copy(Memo1.Lines[i],1,j));
     break;
    end;
  end;
  Memo1.Lines:= StrList;
end;


я же написал как оно у вас будет работать.
Он удаляет все до первой запятой,а нужно удалить в каждой строчке все после запятой
mitiay вне форума Ответить с цитированием
Старый 04.02.2016, 13:10   #20
mitiay
Форумчанин
 
Регистрация: 16.01.2011
Сообщений: 288
По умолчанию

Цитата:
Сообщение от min@y™ Посмотреть сообщение
Аффтар, я от тебя исходные данные дождусь или забить на это всё?
procedure TForm1.Button2Click(Sender: TObject);
Код:

var
i: Integer;
begin
for i:= 0 to Memo1.Lines.Count - 1 do
Memo1.Lines[i]:= Copy(Memo1.Lines[i], 1, Pos(',', Memo1.Lines[i])- 1);
end;

вот я вот так делаю
mitiay вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Удалить все, что после символа fijiisland Microsoft Office Excel 8 31.03.2017 16:04
Как удалить все строки кроме первой, после автофильтра myosotis Microsoft Office Excel 2 30.01.2013 19:31
Делфи. Удалить все лова после 5-го serhan Помощь студентам 3 09.02.2012 13:40
как удалить знаки после запятой ukrman Microsoft Office Excel 11 03.02.2012 17:22
Разделение чисел на до запятой и после запятой msser Microsoft Office Excel 8 23.10.2009 11:57