Търся скрипт или програма

Спам форум
Post Reply
Wolverine
Нов
Нов
Posts: 33
Joined: Thu May 19, 2011 2:41 pm

Търся скрипт или програма

Post by Wolverine » Mon May 23, 2011 6:04 pm

Има ли някакъв начин със скрипт или прграма да проверя голям брой емайли дали има повтарящи се межу тях, и ако има да остава само 1ния?
Примерно от 100 емайла 10 се повтарят, и накрая да останат само 90 без повтарящи се? Надявам се сте ме разбрали какво точно ми трябва :Д

Извинявам се, ако темата не е за този раздел.

User avatar
renegat96
Много Редовен
Много Редовен
Posts: 1998
Joined: Sat Aug 12, 2006 2:00 pm
Answers: 118

Post by renegat96 » Mon May 23, 2011 7:24 pm

Разбрахме те.
Зависи колко са мейлите.
Не мисля, че има, но е лесно да си направиш.
Има структури от данни, които правят съответствие между ключ и стойност, като за ключа не е позволено да се повтаря. Можеш да ползваш такава структура, като ползваш мейла за ключ. Проверката дали съществува определен ключ е бърза, така че не би имало проблем, ако са 10 000.

Ако става въпрос за 100 мейла - няма нищо лошо да ги сравняваш и квадратно.

Ако не знаеш какво е структура от данни, питай.

Wolverine
Нов
Нов
Posts: 33
Joined: Thu May 19, 2011 2:41 pm

Post by Wolverine » Mon May 23, 2011 8:26 pm

Абе принципно са кам 100 000 :Д малко по-малко, но д/г толкова. А за това което ми каза да си направя, нямам идея как става... Ако може да ми помогнеш??

User avatar
renegat96
Много Редовен
Много Редовен
Posts: 1998
Joined: Sat Aug 12, 2006 2:00 pm
Answers: 118

Post by renegat96 » Mon May 23, 2011 8:40 pm

Какъв език за програмиране знаеш?
http://en.wikipedia.org/wiki/Associative_array
Разгледай този линк.
Идеята е следната - пъхаш всички мейли като ключове и накрая ги вадиш.
Поради факта, че не може да има два записа с един и същи ключ - еднаквите мейли ще съвпаднат и като ги извадиш няма да има повтарящи се.

Със сигурност няма да седна да ти пиша програма :D

Wolverine
Нов
Нов
Posts: 33
Joined: Thu May 19, 2011 2:41 pm

Post by Wolverine » Mon May 23, 2011 8:50 pm

Брат, виж сега нищо не разбрах от това което ми каза :Д Емайлите ми са в текстови документи на редове.. Смисъл емайл на 1ви ред, емайл на 2ри и т.н.
Не може ли да се напише някакъв скрипт, който да отвори .txt файла да провери всички емайли и ако има повтарящисе да остави само 1 от повтарящитесе...

Уча PHP... но идея си нямам как може да стане това... А линка, който ми даде не го разбирам

User avatar
HunteR
Web-tourist
Web-tourist
Posts: 3999
Joined: Sun May 28, 2006 3:26 pm
Answers: 352

Post by HunteR » Mon May 23, 2011 10:53 pm

Ето ти го с PHP:

(Направи си резервно копие на файла)

Code: Select all

<?php
set_time_limit&#40;0&#41;;
$file = "emails.txt"; // тук въвеждаш името на файла с емейлите

$emails = file&#40;$file, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES&#41;;

$emails = array_unique&#40;$emails&#41;;

if &#40;file_put_contents&#40;$file, implode&#40;"\n", $emails&#41;&#41;&#41;
    echo 'Готов си.'; // изведе ли ти това нещо, значи всичко е готово. Указаният файл ще съдържа само уникалните e-mail-и. &#58;&#41;
?>

Post Reply