Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.05.06;
Скачать: [xml.tar.bz2];

Вниз

Работа с мемо   Найти похожие ветки 

 
tigraman   (2007-04-17 00:24) [0]

Я понимаю конечно что глупый вопрос, но всетаки, подскажите как из мемо поудалять все одинаковые строки, я делю так:

for i:=0 to Memo3.Lines.Count-1 do  begin
for j:=0 to Memo3.Lines.Count-1 do begin

if memo3.Lines.Strings[i]=memo3.Lines.Strings[j]
then  
    memo3.Lines.Delete(j);
 end; end;


но не все одинаковые строки удаляются почему то, подскажите как правильно. А также если работать с массивом строк, а не с мемо, будет ли программа работать быстрее?


 
Германн ©   (2007-04-17 01:26) [1]


> tigraman   (17.04.07 00:24)
>
> Я понимаю конечно что глупый вопрос, но всетаки, подскажите
> как из мемо поудалять все одинаковые строки,


with Memo3.Lines do
 for i:=Count-1 downto 1 do
   if Strings.IndexOf(Strings[i]) <> i then Strings.Delete(i);


{RASkov} и ЮЗ - простите за банальность!
:-)


 
{RASkov}   (2007-04-17 02:11) [2]

> [0] tigraman   (17.04.07 00:24)

Гениальный подход... Перед сном посмеялся :)

> [1] Германн ©   (17.04.07 01:26)

:)


 
{RASkov}   (2007-04-17 02:31) [3]

Хотя мысль была почти в правильном направлении, зря посмеялся, ну да ладно улыбнуло :)

for i:=Memo3.Lines.Count-1 downto 1 do begin
for j:=0 to i-1 do begin
 if memo3.Lines[i]=memo3.Lines[j] then memo3.Lines.Delete(j);
end;
end;

> [0] tigraman
Что-то напоминает [1] неправда ли?


 
Tigraman   (2007-04-17 14:32) [4]

Вот этот код работает быстрее последнего:

with Memo1.Lines do begin
for i:=Count-1 downto 1 do
  if IndexOf(Strings[i]) <> i then Delete(i);
end;


Последний также подвисает при больших объемах данных.
Спасибо всем.


 
{RASkov}   (2007-04-17 14:36) [5]

> [4] Tigraman   (17.04.07 14:32)
:)
> Что-то напоминает [1] неправда ли?

Я хотел выделить этим о двух циклах в разных направлениях.... вот. И то - что в [3] - оно наверное не правильно будет работать.... только подправил код из [0] для примера. "плохого"...



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2007.05.06;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.049 c
15-1175495841
xayam
2007-04-02 10:37
2007.05.06
Построение дерева исходного кода


2-1176831228
Riply
2007-04-17 21:33
2007.05.06
CreateNamedPipe. Использование OutBufferSize и InBufferSize.


9-1145447877
Luka.rus
2006-04-19 15:57
2007.05.06
вывод "поверх" игры


3-1171522968
pavel_guzhanov
2007-02-15 10:02
2007.05.06
как определить, имеется ли в базе данных определенная процедура?


15-1176191272
Fredy314
2007-04-10 11:47
2007.05.06
Подкиньте идею по скриптам





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский