正则规则
/ 是定界符 '/'定界符之间的部分就是将要在目标对象中进行匹配的模式
+ 元字符规定其前导字符必须在目标对象中连续出现1次或多次
* 元字符规定其前导字符必须在目标对象中出现0次或连续多次
? 元字符规定其前导对象必须在目标对象中连续出现零次或一次
\s 用于匹配单个空格符,包括tab键和换行符
\S 用于匹配除单个空格符之外的所有字符
\d 用于匹配从0到9的数字
\w 用于匹配字母,数字或下划线字符
\W 用于匹配所有与\w不匹配的字符
. 用于匹配除换行符之外的所有字符
^ 定位符规定匹配模式必须出现在目标字符串的开头
$ 定位符规定匹配模式必须出现在目标对象的结尾
\b 定位符规定匹配模式必须出现在目标字符串的开头或结尾的两个边界之一
\B 定位符则规定匹配对象必须位于目标字符串的开头和结尾两个边界之内
/[A-Z]/ 与从A到Z范围内任何一个大写字母相匹配
/[0-9]/ 与从0到9范围内任何一个数字相匹配。
/([a-z][A-Z][0-9])+/ 与任何由字母和数字组成的字符串
\. - 将特殊字符(.)当成普通字符
_ -下划线
[^a-z] - 除了小写字母以外的所有字符
[^\\\/\^] -除了(\)(/)(^)之外的所有字符
[^\"\'] -除了双引号(")和单引号(')之外的所有字符
[0-9\.\-] -匹配所有的数字,句号和减号
^[a-zA-Z_]$ -所有的字母和下划线
邮箱验证
1. preg_match('/^[\w\-\.]+@[\w\-]+(\.\w+)+$/',$email);
2. public function isEmail($email) {
//邮箱格式验证
$is_email = filter_var($email, FILTER_VALIDATE_EMAIL);
if (!$is_email) {
return false;
} else {
//邮箱的可用性检测
$domain = explode('@', $email);
$domain = $domain[1];
$is_email = checkdnsrr($domain, 'MX');
return $is_email;
}
}