重複の可能性:
テキストからメールアドレスを解析/トリミングする方法
名前とメールアドレスのリストからメールアドレスを抽出するにはどうすればよいですか?
入力例:
"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,
重複の可能性:
テキストからメールアドレスを解析/トリミングする方法
名前とメールアドレスのリストからメールアドレスを抽出するにはどうすればよいですか?
入力例:
"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,
この 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");
?>
function extract_emails_from($string) {
preg_match_all("/[\._a-zA-Z0-9-]+@[\._a-zA-Z0-9-]+/i", $string, $matches);
return $matches[0];
}
この URL をたどると役に立ちます。