正则匹配的一些常用表达式,包括:姓名,身份证,手机号,内容是否有拼音
正则表达式(php版,重要的是表达式的书写,并不限于语言)
1、匹配邮箱格式
public static function validateEmail($email){
$exp = '/^[a-zA-Z0-9]+([._-]*[a-zA-Z0-9]+)*@([a-zA-Z0-9]+([._-][a-zA-Z0-9]+))+$/';
//先用正则表达式验证email格式的有效性
if(preg_match($exp,$email)){
return true;
}
return false;
}
2、匹配邮箱格式
public static function checkPhone($phone) {
if (!is_numeric($phone)) {
return false;
}
return preg_match('/^13[\d]{9}$|^14[5,6,7,8,9]{1}\d{8}$|^15[^4]{1}\d{8}$|^16[6]{1}\d{8}$|^17[^9]{1}\d{8}$|^18[\d]{9}$|^19[8,9]{1}\d{8}$/', $phone) ? true : false;
}
3、匹配真实姓名
public static function validateRealName($realname){
$exp = '/^[a-zA-Z\x{4e00}-\x{9fa5}+\·?\.?a-zA-Z\x{4e00}-\x{9fa5}]{1,25}$/u';
if(!preg_match( $exp, $realname ) ){
return false;
}
return true;
}
4、精确匹配身份证号码
public static function validateID($number){
$has_patch = '(^[1-9]\d{5}[1-9]\d{3}(((0[2])([0|1|2][0-8])|(([0-1][1|4|6|9])([0|1|2][0-9]|[3][0]))|(((0[1|3|5|7|8])|(1[0|2]))(([0|1|2]\d)|3[0-1]))))((\d{4})|\d{3}[Xx])$)';
if (!preg_match($has_patch, $number)){
return false;
}
return true;
}
5、判断内容是否有拼音
public static function validateContentHasPinYin($content){
$has_patch = '/[a-z]+/';
if (!preg_match($has_patch, $content)){
return false;
}
return true;
}