1

可能重复:
如何从文本中解析/修剪电子邮件地址

如何从姓名和电子邮件地址列表中提取电子邮件地址?

示例输入:

"a1 b.d"<a1@test.com>,
<a2@test.com>,
"a3 b.d"<a3@test.com> ,
a4@test.com ,

输出 :

a1@test.com,
a2@test.com,
a3@test.com,
a4@test.com,
4

2 回答 2

0

此 PHP 函数将从字符串中提取电子邮件地址并将其放入可点击的链接中:

function extractEmail( $data )
{
    if ( preg_match( "/[^@\s]+@([-a-z0-9]+\.)+[a-z]{2,}/i", $data, $email ) )
    {
        $replacement = '<a href="mailto:' . $email[ 0 ] . '" target="_blank">' . $email[ 0 ] . '</a> ';
        $data        = preg_replace( "/[^@\s]+@([-a-z0-9]+\.)+[a-z]{2,}/i", $replacement, $data );
    }
    return $data;
}

要使用它,请创建 PHP 文件并在其中添加一个测试条目(但不要忘记将上面的函数放入其中):

<?php
  echo extractEmail("Some text goes here before mail@mail.com and some text here goes after");
?>
于 2012-08-12T12:31:24.523 回答
0
function extract_emails_from($string) {
         preg_match_all("/[\._a-zA-Z0-9-]+@[\._a-zA-Z0-9-]+/i", $string, $matches);
         return $matches[0];
}

认为关注此 URL 将对您有所帮助。

http://css-tricks.com/snippets/php/extract-email-addresses/

于 2012-08-12T12:19:50.283 回答