Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Регулярные Выражения

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Извлечение e-mail адресов из HTML-текста
 
 автор: nax   (06.11.2007 в 13:15)   письмо автору
 
 

Здраствуйте! Помогите, пожалуйста, составить регулярку, вытаскивающую все емейлы из подобной строки:

<?php
$text 
'<a href="mailto:user@host.fd">asdsd</a>Какой-то текст<a href="mailto:ishouser@host.ru">ывыфвафыв</a> ';
?>

Из этой строки нужно получить массив, содержащий все адреса в виде: ishouser@host.ru. Я новичок, уже 2 день пытаюсь сделать это, ничего не выходит.

Спасибо.

   
 
 автор: Unkind   (06.11.2007 в 13:27)   письмо автору
 
   для: nax   (06.11.2007 в 13:15)
 

А что же Вы пытаетесь сделать? После вытаскивания?

   
 
 автор: nax   (06.11.2007 в 13:37)   письмо автору
 
   для: Unkind   (06.11.2007 в 13:27)
 

Антиспам-защиту хочу сделать. Некоторые пользователи просто достали спамом, в которых указывают одни и те-же ссылки на сайты и мэйл-адреса. Эти адреса и мэйлы я занёс в чорный список и хочу блокировать отправку сообщений, содержащих эти адреса. Регулярку, вытягивающую адресс ссылки, я нашел, а вот вытягивающую мыло - нет.

   
 
 автор: Unkind   (06.11.2007 в 13:48)   письмо автору
 
   для: nax   (06.11.2007 в 13:37)
 

А они зарегистрированные? Почему бы нормальную CAPTCHA не поставить?

   
 
 автор: Faraon   (06.11.2007 в 13:29)   письмо автору
 
   для: nax   (06.11.2007 в 13:15)
 


<pre>
<?php
$text 
'<a href="mailto:user@host.fd">asdsd</a>Какой-то текст<a href="mailto:ishouser@host.ru">ывыфвафыв</a> ';
preg_match_all("|mailto:([^\"]+)\"|is",$text,$out);
print_r ($out);
?>

   
 
 автор: Unkind   (06.11.2007 в 13:32)   письмо автору
 
   для: Faraon   (06.11.2007 в 13:29)
 

А зачем Вы добавили модификатор "s"? Просто так?

   
 
 автор: Faraon   (06.11.2007 в 13:38)   письмо автору
 
   для: Unkind   (06.11.2007 в 13:32)
 

Это уже по привычке :)

   
 
 автор: nax   (06.11.2007 в 13:38)   письмо автору
 
   для: Faraon   (06.11.2007 в 13:29)
 

Спасибо огромное. Работает.

   
 
 автор: Unkind   (06.11.2007 в 13:39)   письмо автору
 
   для: nax   (06.11.2007 в 13:38)
 

Так для чего Вам это, а?

   
 
 автор: nax   (06.11.2007 в 13:41)   письмо автору
 
   для: Unkind   (06.11.2007 в 13:39)
 

Читайте выше.

   
 
 автор: Unkind   (06.11.2007 в 13:45)   письмо автору
 
   для: nax   (06.11.2007 в 13:41)
 

-

   
 
 автор: nax   (06.11.2007 в 13:52)   письмо автору
 
   для: Unkind   (06.11.2007 в 13:45)
 

В том-то и дело, что мне эти емэйлы нахрен не нужны. Всё чаще на сайте стали появляться сообщения, содержащие строку типа "<a href="mailto:блабла@бла.ru">Раскрутка сайта</a>", повторяющуюся несколько десятков раз. Такие емэйлы я занёс в чорный список, и если в сообщении, отправленном пользователем, будет встречаться один из этих мылов, сообщение отправлено не будет. GD хостинг не поддерживает, так что нет возможности ставить капчу, нашел только такой вариант борьбы со спам-роботами :(

   
 
 автор: Unkind   (06.11.2007 в 13:55)   письмо автору
 
   для: nax   (06.11.2007 в 13:52)
 

Есть CAPTCHA и без картинок. Тут уже на форуме обсуждалось. Просьба ввести результат какого-то несложного арифметического выражения, например.

   
 
 автор: nax   (06.11.2007 в 14:00)   письмо автору
 
   для: Unkind   (06.11.2007 в 13:55)
 

Но моя защита и от ручного спама защитит :р.
Про "без GD" поищу.. Спасибо.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования