在PHP編寫的程序中,為了保證代碼本身的流程安全,少不了對數據流進行一些效驗的工作。而PHP給我提供了正則表達式驗證函數,我們可以很方便的通過正則表達式的驗證函數,來檢查數據流是否符合標準。

国产视频app今天我們就列出一些常用的正則表達式,就當做一個記錄吧。

PHP正則表達式匹配函數preg_match()

preg_match() 函數用于進行正則表達式匹配,成功返回 1 ,否則返回 0 。

語法:

int preg_match( string pattern, string subject [, array matches ] )

參數說明:

pattern正則表達式

subject需要匹配檢索的對象

matches国产视频app可選,存儲匹配結果的數組, $matches[0] 將包含與整個模式匹配的文本,$matches[1] 將包含與第一個捕獲的括號中的子模式所匹配的文本,以此類推

PHP驗證手機號正則表達式代碼

$phone='13112345678;
$preg_phone='/^1[345789]\d{9}$/ims';
if(preg_match($preg_phone,$phone)){
    echo 1;
}else{
    echo 0;
}

PHP驗證郵箱地址正則表達式代碼

$email='540344537@qq.com';
$preg_email='/^[a-zA-Z0-9]+([-_.][a-zA-Z0-9]+)*@([a-zA-Z0-9]+[-.])+([a-z]{2,5})$/ims';
if(preg_match($preg_email,$email)){
    echo 1;
}else{
    echo 0;
}

PHP驗證身份證號正則表達式代碼

$IDCard='';
$preg_card='/^\d{15}$)|(^\d{17}([0-9]|X)$/isu';
if(preg_match($preg_card,$IDCard)){
    echo 1;
}else{
    echo 0;
}

注意:這里只是對身份證號中的數字與位數進行的驗證,如果想要嚴格的驗證,請參考本博客的關于身份證號碼驗證的其它文章。

PHP驗證是否只包含中文或英文的正則表達式代碼

$name='mochu';
$preg_name='/^[\x{4e00}-\x{9fa5}]{2,10}$|^[a-zA-Z\s]*[a-zA-Z\s]{2,20}$/isu';
if(preg_match($preg_name,$name)){
    echo 1;
}else{
    echo 0;
}

PHP驗證QQ號碼的正則表達式代碼

$QQ='';
$preg_QQ='/^\d{5,12}$/isu';
if(preg_match($preg_QQ,$QQ)){
    echo 1;
}else{
    echo 0;
}

PHP驗證是否微信號的正則表達式代碼

$wechat='cdxcfvsd515d5___1';
$preg_wechat='/^[_a-zA-Z0-9]{5,19}+$/isu';
if(preg_match($preg_wechat,$wechat)){
    echo 1;
}else{
    echo 0;
}

PHP驗證是否特殊符號的正則表達式代碼

$spacial='^%**Y*(';
$preg_spacial="/\/|\~|\!|\@|\#|\\$|\%|\^|\&|\*|\(|\)|\+|\{|\}|\:|\<|\>|\?|\[|\]|\,|\/|\;|\\' | \`|\-|\=|\\\|\|/isu";
if(preg_match($preg_spacial,$spacial)){
    echo 1;
}else{
    echo 0;
}

PHP驗證是否銀行卡號碼正則表達式代碼

$bankcard='';
$preg_bankcard='/^(\d{15}|\d{16}|\d{19})$/isu';
if(preg_match($preg_card,$bankcard)){
    echo 1;
}else{
    echo 0;
}

PHP驗證固定號碼的正則表達式

$call='02312345678';
$preg_call='/^(0\d{2,3})?(\d{7,8})$/ims';
if(preg_match($preg_call,$call)){
    echo 1;
}else{
    echo 0;
}

PS:以上正則表達式代碼,來自網絡收集。請你在使用時,多做一些測試,如果有錯誤也可在下方留言評論!