[PHP-users 29826] Re: メールの自動リンク

NISHIMURA Yutaka forml @ aypio.net
2006年 7月 19日 (水) 23:57:17 JST


西村です。

Reply to <20060719230212.E684.ALPHA @ alpha.ne.jp>
ALPHA <alpha @ alpha.ne.jp> wrote:
> <?
> $mail = "123456789 @ docomo.ne.jp";
> $mail = ereg_replace("[^=\'\">]([0-9a-zA-Z./_-]+@[0-9a-zA-Z./_-]+\.[0-9a-zA-Z]{2,4})", " <a href=\"mailto:\\1\">\\1</a>", $mail);
:
> <a href="mailto:23456789 @ docomo.ne.jp">23456789 @ docomo.ne.jp</a>

そりゃそうでしょう。

>[^=\'\">]
最初の↑で、='">でない、何か一文字としてマッチしてしまいます。
ですので、
"([^=\'\">][0-9a-zA-Z./_-]+@[0-9a-zA-Z./_-]+\.[0-9a-zA-Z]{2,4})"
としてマッチさせてやれば、お望みの動作するはずです。

-- 
NISHIMURA,Yutaka./西村 隆 <forml @ aypio.net>




PHP-users メーリングリストの案内