在以下几个示例中,用preg_replace函数实现手机号码中间指定几位替换成星号。
一、使用php正则表达式替换手机号码中间几位。
1、字符串中包含多个手机号码
<?php $s='王经理:13999312365 李经理:13588958741'; $s=preg_replace('#(d{3})d{5}(d{3})#', '${1}*****${2}', $s); echo $s; //王经理:139*****365 李经理:135*****741 ?>
2、字符串中只有一个手机号码
<?php $haoma="15012345678"; echo preg_replace("/(d{3})d{5}/","$1*****",$haoma); //150*****678 ?>
二、非php正则方式替换手机号中间几位
1、使用substr_replace字符串部分替换函数
<?php $string1="13264309555"; echo substr_replace($string1,'*****',3,5); //132*****555 ?>
2、使用字符串截取函数substr
<?php echo substr($string1,0,3)."*****".substr($string1,8,3); //132*****555 ?>