您现在的位置是: 网站首页> PHP PHP

PHP常用正则匹配规则

Smile 2020-03-19 PHP 阅读:874

简介在web开发中,表单数据经常要经过验证,比如电话号码,身份证号,这时往往需要用到正则表达式,下面介绍几个PHP中常用的正则表达式规则

1、PHP手机号码正则表达式

示例:

<?php 

$regex = '/^1[34578]\d{9}$/';
$phone = '13435118854';
$str = '手机号码13435118854';

if(preg_match($regex,$phone)){
	echo "匹配正确<br/>";
}else{
	echo "未匹配<br/>";
}

if(preg_match($regex,$str)){
	echo "匹配正确<br/>";
}else{
	echo "未匹配<br/>";
}

 ?>

输出:

匹配正确
未匹配

2、PHP邮箱正则表达式

示例:

<?php 

$regex = '/^[a-z0-9]+([._-][a-z0-9]+)*@([0-9a-z]+\.[a-z]{2,14}(\.[a-z]{2})?)$/i';
$email = '13435118854@163.com';
$str = '邮箱13435118854@163.com';

if(preg_match($regex,$email)){
	echo "匹配正确<br/>";
}else{
	echo "未匹配<br/>";
}

if(preg_match($regex,$str)){
	echo "匹配正确<br/>";
}else{
	echo "未匹配<br/>";
}

 ?>

输出:

匹配正确
未匹配

3、PHP简单身份证正则表达式

示例:

<?php 

$regex = '/^(\d{15}$|^\d{18}$|^\d{17}(\d|X|x))$/';
$idCard1 = '44023219980215422x';
$idCard2 = 'abc23219980215422x';

if(preg_match($regex,$idCard1)){
	echo "身份证正确<br/>";
}else{
	echo "身份证错误<br/>";
}

if(preg_match($regex,$idCard2)){
	echo "身份证正确<br/>";
}else{
	echo "身份证错误<br/>";
}

 ?>

输出:

身份证正确
身份证错误

其他常用验证正则表达式

4、验证是否是合法的url地址

'/^http(s?):\/\/(?:[A-za-z0-9-]+\.)+[A-za-z]{2,4}(:\d+)?(?:[\/\?#][\/=\?%\-&~`@[\]\':+!\.#\w]*)?/'

5、验证是否是合法的IP地址

'/^(((1?\d{1,2})|(2[0-4]\d)|(25[0-5]))\.){3}((1?\d{1,2})|(2[0-4]\d)|(25[0-5]))$/'

6、正则匹配img标签

preg_match_all('/<img(.*?)src=\"(.*?)\"(.*?)>/is', $content, $matches);

matches[0] //整个img标签

matches[2] //图片的url

很赞哦! (0)

文章评论

站点信息