程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> php正則表達式驗證郵箱

php正則表達式驗證郵箱

編輯:關於PHP編程

郵箱驗證代碼大都是不能驗證一個字母的域名或一個字母的用戶名,如:[email protected][email protected] 。解決方法如下:

1,不做總長度判斷,長度判斷可以自己加上;

2,支持.net.cn,.com.cn這樣的域名後綴;

3,郵箱名部分以字母或者數字開頭,中間可以有“-”與“_”符號;

4,域名部分以字母或者數字開頭,中間可以有“-”與“_”符號;


PHP 郵箱驗證正則表達式

 代碼如下 復制代碼

preg_match("/^[0-9a-zA-Z]+@(([0-9a-zA-Z]+)[.])+[a-z]{2,4}$/i",$email );

實例

 代碼如下 復制代碼

/**
 * 自己修整的一個郵箱正則表達式
 * 瓊台博客
 */
echo '<meta charset="utf-8" />';
function c_email($email){
    $reg='/^([a-zA-Z0-9]{1,20})(([_-.])?([a-zA-Z0-9]{1,20}))*@([a-zA-Z0-9]{1,20})(([-_])?([a-zA-Z0-9]{1,20}))*(.[a-z]{2,4}){1,2}$/';
    if(preg_match($reg,$email))
        return true;    
    return false;
}
$email = '[email protected]';
$check_result = c_email($email);
if($check_result){
    echo '郵箱格式正確';
}else{
    echo '郵箱格式錯誤';
}

郵箱驗證類

 代碼如下 復制代碼

<?php
class Reg
{
    public $mail;
    function __construct()
    {
        $this->mail = $_POST["mail"];       
    }
    function RegMail()
    {
        if(preg_match("/^[0-9a-zA-Z]+(?:[_-][a-z0-9-]+)*@[a-zA-Z0-9]+(?:[-.][a-zA-Z0-9]+)*.[a-zA-Z]+$/i", $this->mail))
        {
            echo "<script language='javascript'>alert('驗證成功')</script>";
        }
        else
        {
            echo "<script language='javascript'>alert('驗證失敗')</script>";
        }
    }
}
$r = new Reg();
$r->RegMail();
$strings = "[email protected]";
if(preg_match("/^[0-9a-zA-Z]+(?:[_-][a-z0-9-]+)*@[a-zA-Z0-9]+(?:[-.][a-zA-Z0-9]+)*.[a-zA-Z]+$/i",$strings))
{
    echo"驗證成功!是郵箱地址。";
}
else
{
    echo"不是郵箱地址!";
}
?>

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved