 |

24.06.2009, 19:01
|
|
Познающий
Регистрация: 14.01.2008
Сообщений: 38
С нами:
9643778
Репутация:
-11
|
|
Парсинг mail'ов
Есть список txt, а в нём куча мылов, в перемешку с текстом
Нужно выпарсить все майлы, и создать список майлов, чтобы не повторялись... Навеярняка уже есть готовые скрипты.. Выложите плиз 
|
|
|

25.06.2009, 00:12
|
|
Познающий
Регистрация: 12.11.2007
Сообщений: 94
С нами:
9734391
Репутация:
71
|
|
В файл text.txt кидаешь всё что надо отпарсить
В конце получишь мыла в файле pars_emails.txt
#!/usr/bin/perl -w
open (FILE , "<text.txt");
chomp (@text = <FILE>);
close FILE;
undef %saw;
while (@text)
{
$pars = shift @text;
$pars =~ /\b(.*?)\@(.*?)\.(.{2,4})/g;
$email = "$1\@$2\.$3";
push @in,$email;
}
@in = grep(!$saw{$_}++, @in);
open (FILE2 , ">>pars_emails.txt");
while (@in)
{
$end = shift @in;
print FILE2 "$end\n";
}
close FILE2;
Последний раз редактировалось TheSoul; 25.06.2009 в 11:40..
|
|
|

25.06.2009, 00:22
|
|
Постоянный
Регистрация: 15.06.2008
Сообщений: 941
С нами:
9423746
Репутация:
2399
|
|
PHP код:
$f = @implode('',@file('INPUT.TXT'));
if (preg_match_all('/(\w+@\w+\.\w{2,3})/'),$f,$m) {
$m = array_unique($m);
var_dump($m);
}
|
|
|

25.06.2009, 11:34
|
|
Участник форума
Регистрация: 05.11.2008
Сообщений: 105
С нами:
9217801
Репутация:
71
|
|
TheSoul, твой вариант не подойдет хотя бы потому что в адресах с зоной домена из 4-х букв домен будет урезан до 3-х (например вместо mail.info будет mail.inf), что не есть гуд!
eLWAux, а у тебя если в адресе будет -(тире) или .(точка) , то они будут проигнорированы, т.е. \w проверяет только состоит ли текст только из букв, цифр и символов подчеркивания.
поэтому предлагаю в качестве регулярки для поиска следующее:
Код:
(.*) ([\w+\-\.]+\@[\w\-\.]+\.\w{2,4}) (.*)
Хотя, конечно, надо видеть текст!
Последний раз редактировалось demond; 25.06.2009 в 11:40..
|
|
|

25.06.2009, 12:32
|
|
Постоянный
Регистрация: 05.01.2009
Сообщений: 684
С нами:
9130007
Репутация:
485
|
|
Допустим меня интересует для БД в формате .sql
|
|
|

25.06.2009, 12:52
|
|
Участник форума
Регистрация: 05.11.2008
Сообщений: 105
С нами:
9217801
Репутация:
71
|
|
Сообщение от ReduKToR
Допустим меня интересует для БД в формате .sql
пример текста дай, чтобы не изобретать! И я тебе приведу готовое регулярное выражение!
|
|
|

25.06.2009, 14:07
|
|
Постоянный
Регистрация: 05.12.2004
Сообщений: 647
С нами:
11278406
Репутация:
818
|
|
Допустим меня интересует для БД в формате .sql
помоему ТС хочет вытянуть с дампа мыльники, тогда уже легче сделать запрос в БД:
SELECT email_column FROM table_name
|
|
|
|
 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|