正则表达式验证网址

演示代码
匹配规则按照下方示例网址进行,根据下方给出的参数进行自定义修改

<?php
$URL = 'https://www.baidu.com/index.php';
//将末尾?号改成+表示必须匹配1次或者多次链接结尾的文件名(index.php),若没有文件名或者文件名格式不在范围 
//内则匹配失败,当前为?表示文件名可有可无。
//[phptxthtmlzip] = 允许匹配的文件后缀
//(^https?|ftps?) = 匹配必须是以https/http/ftp/ftp协议头开始的网址
//{0,1} = 匹配前面的.至少出现0次最多出现1次
$pattern = '/(^https?|ftps?):\/\/([^\n\。\.\+\,\*\!\@\#\$\%\^\&]+)?\.{0,1}
([^\n\。\.\+\,\*\!\@\#\$\%\^\&]+)\.{0,1}(com|cn|top|org|cc|vip|xyz|cn\.com)+
\/(\w+\.[phptxthtmlzip]+)?/i';
if (preg_match($pattern, $URL)) {
echo '匹配正常!';
} else {
echo '匹配失败!';
}
?>

正则表达式验证邮箱

演示代码
匹配格式:xxxxx..@xx..xxx..

<?php
$E_mail = '1590620380@qq.com';
$pattern = '/^\w+@{1,1}\w+\.{1,1}\w+/';
if (preg_match($pattern, $E_mail)) {
echo '匹配正常!';
} else {
echo '匹配失败!';
}
?>

正则表达式验证手机号码

演示代码
根据下方给出的参数进行自定义修改

<?php
$phone = '18888888888';
//^1{1,1} = 必须匹配1开头的手机号最少1个1,最多1个1
//{9,} = 匹配剩余手机号的长度,剩余号码长度必须为9
$pattern = '/^1{0,1}(7|8|5|6|3)\d{9}$/';
if (preg_match($pattern, $phone)) {
echo '匹配正常!';
} else {
echo '匹配失败!';
}
?>