Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

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

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


Донат для форума - использовать для поднятия настроения себе и модераторам

А ещё здесь можно купить рекламу за 15 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru

Ответ
 
Опции темы
Старый 17.01.2010, 08:48   #1
AHTOLLlKA
Новичок
 
Регистрация: 06.04.2009
Сообщений: 2
Репутация: 10
Вопрос удалить дубли в tstringlist, и удалить по списку

всем привет, сразу к делу а то оч надо
вот столкнулся стакой проблемой:
есть tstringlist
в нем список такой:
http://site1.ru/test/1.php
http://site1.ru/test/12313123.php
http://site1.ru/test/6t5463453565363.php
http://site3333.ru/main.php
http://site3333.ru/glvaaaaaaaaaa.php

тоесть список сайтов и есть одинаковые домены...
тоесть мне надо удалить дубли
как то надо брать первый пункт: http://site1.ru/test/1.php и искать по его моену дубли и удалять и потом со списком что осался продолжаить удалять дубли для каждого домена

как мне такое провернуть ?
AHTOLLlKA вне форума   Ответить с цитированием
Старый 17.01.2010, 11:07   #2
Serge_Bliznykov
МегаМодератор
СуперМодератор
 
Регистрация: 09.01.2008
Сообщений: 25,469
Репутация: 5596
По умолчанию

нужно написать функцию выделения Домена из вашей строки.
а потом уже банальщина: если порядок неважен, то отсортировать список (TS.Sort), идти в цикле по записям, сравнивая функцию получения домена от текущей записи с функцией получения домена от следущей записи. Если совпадают - следующую строчку удалять.

Если порядок важен и сортировать нельзя, то алгоритм чуть-чуть другой: для каждой записи в цикле ищем совпадение домена среди оставшихся до конца списка записей (т.е. от записи i+1 до последней), если есть совпадаения домена - найденные удаляем.

всё.

Что у Вас вызывает затруднения?
Serge_Bliznykov на форуме   Ответить с цитированием
Старый 17.01.2010, 11:20   #3
AHTOLLlKA
Новичок
 
Регистрация: 06.04.2009
Сообщений: 2
Репутация: 10
По умолчанию

ок спасибо, решил просто не наркаманить и сделал проверку по списку при добавлении
спасибо за ответ
AHTOLLlKA вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Удалить пустые строки из TStringList apromix Общие вопросы Delphi 5 14.09.2016 13:14
удалить DrWEB Cantana Свободное общение 10 29.04.2009 14:10
Не могу удалить Detka Свободное общение 4 22.08.2008 23:19
как удалить анти вирус( касперский 2006)если она не работает и ее не возможно удалить Alar Общие вопросы Delphi 0 29.10.2006 22:36


13:21.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.

Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru