![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Подскажите пожалуйста
имею большой memo1 с текстом Код:
1.17 2.21 33.32 44.44 5.2 6.45 77 8.14 как программно удалить ту строку где отсутствует символ? (В данном случае это точка). |
#2
|
|||
|
|||
![]() Код:
i:=0; Repeat s:=Memo1.Lines[i]; n:=pos('.', s); if n=0 then Memo1.Lines.Delete[i] else inc(i); until i=Memo1.Lines.Count-1; |
Этот пользователь сказал Спасибо PS11011010 за это полезное сообщение: | ||
logan22 (08.07.2012)
|
#3
|
||||
|
||||
![]() Смотри последнюю ссылку в подписи.
— Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
Этот пользователь сказал Спасибо M.A.D.M.A.N. за это полезное сообщение: | ||
logan22 (08.07.2012)
|
#4
|
|||
|
|||
![]() Цитата:
спасибо за отзыв.. но жалуется [Error] Unit1.pas(505): Not enough actual parameters указывая на эту часть кода Код:
var n, i: integer; s : string; begin i:=0; Repeat s:=Memo1.Lines[i]; n:=pos('.', s); if n=0 then Memo1.Lines.Delete[i] else inc(i); until i=Memo1.Lines.Count-1; Последний раз редактировалось Admin, 08.07.2012 в 22:36. |
#5
|
||||
|
||||
![]() В круглые скобки возьми.
— Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
Этот пользователь сказал Спасибо M.A.D.M.A.N. за это полезное сообщение: | ||
logan22 (09.07.2012)
|
#6
|
|||
|
|||
![]() извините пожалуйста меня родимого за нагласть
![]() Но как будет правильно переделать так чтоб скорость выполнения данного кода была высокой??? Я слышал о такой вещи как СтринжЛист да? помогите пожалуйста |
#7
|
|||
|
|||
![]() забей в поиск stringlist, можно ещё через Memo1.Lines.BeginUpdate
|
Этот пользователь сказал Спасибо Pyro за это полезное сообщение: | ||
logan22 (09.07.2012)
|
#8
|
|||
|
|||
![]() Цитата:
А по-моему ошибка такова: Код:
if n=0 then Memo1.Lines[i].Delete |
Этот пользователь сказал Спасибо PS11011010 за это полезное сообщение: | ||
logan22 (09.07.2012)
|
#9
|
|||
|
|||
![]() Если юзать данный код то после нажатия на кнопку программа зависает!)
|
#10
|
||||
|
||||
![]() Цитата:
Код:
i:=0; Repeat s:=Memo1.Lines[i]; n:=pos('.', s); if n=0 then Memo1.Lines.Delete[i]; inc(i); until i=Memo1.Lines.Count-1; Всегда пишите код так, будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете. |
Этот пользователь сказал Спасибо Kailon за это полезное сообщение: | ||
logan22 (11.07.2012)
|
#11
|
|||
|
|||
![]() Не, не пашит.
Опять зависает!) А конкретнее если использовать Ваш код то жалуется на строчку Код:
if n=0 then Memo1.Lines.Delete[i]; ах да забыл сказать у меня Delphi 7 ![]() |
#12
|
||||
|
||||
![]() Цитата:
Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. |
Этот пользователь сказал Спасибо angvelem за это полезное сообщение: | ||
logan22 (11.07.2012)
|
#13
|
|||
|
|||
![]() Цитата:
А цикл в обратном порядке просто прокрутить не догадались? Код:
For i := Memo1.Lines.Count-1 DownTo 0 Do If Pos('.',Memo1.Lines[i]) = 0 Then Memo1.Lines.Delete(I); |
Этот пользователь сказал Спасибо lmikle за это полезное сообщение: | ||
logan22 (11.07.2012)
|
#14
|
||||
|
||||
![]() Топи F8 да смотри состояния переменных, может сам разберешься из-за чего циклится.
— Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
Этот пользователь сказал Спасибо M.A.D.M.A.N. за это полезное сообщение: | ||
logan22 (11.07.2012)
|
#15
|
|||
|
|||
![]() Цитата:
Как не странно, оно сработало! Но.... опять же сказу же зависла как сделало дело!) ![]() |