Выделяем email из строки

Когда-нибудь удивлялись, как спамеры получают ваши email адреса? Все просто. Они берут веб страницу (например, с форума) и проводят парсинг html кода для выделения emails адресов. Ниже приведённый код получает строку в качестве параметра и печатает все email, которые содержатся в ней. Пожалуйста, не используйте данный код для спама!
function extract_emails($str){
    // Регулярное выражение, которое извлекает все email из строки:
    $regexp = '/([a-z0-9_\.\-])+\@(([a-z0-9\-])+\.)+([a-z0-9]{2,4})+/i';
    preg_match_all($regexp, $str, $m);
 
    return isset($m[0]) ? $m[0] : array();
}
 
$test_string = 'Тестовая строка...
 
        test1@example.org
 
        Проверяем другие форматы:
        test2@example.org;
<a href="test3@example.org">foobar</a>
<test4@example.org>
 
        Ещё проверка:
        test5@example.org
        test6[at]example.org
        test7@example.net.org.com
        test8@ example.org
        test9@!foo!.org
 
        foobar
';
 
print_r(extract_emails($test_string));
Теги:
email
Добавлено: 10 Мая 2018 19:11:24 Добавил: Андрей Ковальчук Нравится 0
Добавить
Комментарии:
Нету комментариев для вывода...