正则表达式在匹配字符串时,遵循以下2个基本原则

1.最左原则:正则表达式总是从目标字符串的最左侧开始,依次匹配,直到匹配到符合表达式要求的部分,或直到匹配目标字符串的结束。

2.最长原则:对于匹配到的目标字符串,正则表达式总是会匹配到符合正则表达式要求的最长的部分

正则验证手机号

//正则验证手机号 正确返回 true
function preg_mobile($mobile) {
    if(preg_match("/^1[34578]\d{9}$/", $mobile)) {
        return TRUE;
    } else {
        return FALSE;
    }
}

验证电话号码

//验证电话号码
function preg_tel($tel) {
    if(preg_match("/^(\(\d{3,4}\)|\d{3,4}-)?\d{7,8}$/", $tel)) {
        return TRUE;
    } else {
        return FALSE;
    }
}

验证身份证号

//验证身份证号(15位或18位数字)
function preg_idcard($idcard) {
    if(preg_match("/^\d{15}|\d{18}$/", $idcard)) {
        return TRUE;
    } else {
        return FALSE;
    }
}

验证是否是数字

//验证是否是数字(这里小数点会认为是字符)
function preg_digit($digit) {
    if(preg_match("/^\d*$/", $digit)) {
        return TRUE;
    } else {
        return FALSE;
    }
}

验证是否是数字(可带小数点的数字)

//验证是否是数字(可带小数点的数字)
function preg_num($num) {
    if(is_numeric($num)) {
        return TRUE;
    } else {
        return FALSE;
    }
}

验证由数字、26个英文字母或者下划线组成的字符串

//验证由数字、26个英文字母或者下划线组成的字符串
function preg_str($str) {
    if(preg_match("/^\w+$/", $str)) {
        return TRUE;
    } else {
        return FALSE;
    }
}

验证用户密码

//验证用户密码(以字母开头,长度在6-18之间,只能包含字符、数字和下划线)
function preg_password($str) {
    if(preg_match("/^[a-zA-Z]\w{5,17}$/", $str)) {
        return TRUE;
    } else {
        return FALSE;
    }
}

验证汉字

//验证汉字
function preg_chinese($str) {
    if(preg_match("/^[\u4e00-\u9fa5],{0,}$/", $str)) {
        return TRUE;
    } else {
        return FALSE;
    }
}

验证Email地址

//验证Email地址
function preg_email($email) {
    if(preg_match("/^\w+[-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/", $email)) {
        return TRUE;
    } else {
        return FALSE;
    }
}

验证网址URL

//验证网址URL
function preg_link($url) {
    if(preg_match("/http:\/\/[\w.]+[\w\/]*[\w.]*\??[\w=&\+\%]*/is", $url)) {
        return TRUE;
    } else {
        return FALSE;
    }
}

验证腾讯QQ号

//腾讯QQ号
function preg_qq($qq) {
    if(preg_match("/^[1-9][0-9]{4,}$/", $qq)) {
        return TRUE;
    } else {
        return FALSE;
    }
}

验证中国邮政编码

//验证中国邮政编码 6位数字
function preg_post($post) {
    if(preg_match("/^[1-9]\d{5}(?!\d)$/", $post)) {
        return TRUE;
    } else {
        return FALSE;
    }
}

验证IP地址

//验证IP地址
function preg_ip($ip) {
    if(preg_match("/^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$/", $ip)) {
        return TRUE;
    } else {
        return FALSE;
    }
}

由于时间仓促,错误与疏忽之处在所难免,希望各位朋友们以邮件的形式反馈问题给我,再次表示感谢!