• ベストアンサー

preg_matchの正規表現

PHPの掲示板でemailアドレス(携帯のemailも含む)を投稿できないようにpreg_matchする正規表現を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • moveline
  • ベストアンサー率72% (35/48)
回答No.2

あ、すいません。 逆の動作をしてました 正しくは以下のです。 <?php if(preg_match("/^([a-zA-Z0-9])+([a-zA-Z0-9\._-])*@([a-zA-Z0-9_-])+([a-zA-Z0-9\._-]+)+$/", $mail)) { die("メールアドレスが含まれています"); } else { //正常な動作 } ?>

iiw2
質問者

補足

どうもありがとうございます。 携帯メールでよくある xxx.xxx.xxx@ みたいなアドレスだとダメでした。 いっそのこと preg_match("/@/") でもいいのかな。 これだと何かマズイことありますかね。

その他の回答 (1)

  • moveline
  • ベストアンサー率72% (35/48)
回答No.1

こんな感じですか? 値として $mail = "xxx@yyy.com"; というものがあった場合ですと <?php if(!preg_match("/^([a-zA-Z0-9])+([a-zA-Z0-9\._-])*@([a-zA-Z0-9_-])+([a-zA-Z0-9\._-]+)+$/", $mail)) { die("メールアドレスが含まれています"); } else { //正常な動作 } ?>

関連するQ&A

専門家に質問してみよう