PHP常用正则(手机号、座机、邮箱、身份证及手机号截取)

主要分享php中手机号、座机、邮箱、身份证(15或18位)、手机号截取(中间四位为*)的正则表达式,都是自己工作收集而来,如果有不对的地方,欢迎提出,代码如下:

  1. //验证手机号
  2. $match = '/^((13[0-9])|(15[^4,\d])|(18[0,5-9]))[0-9]{8}$/';
  3. //验证座机
  4. $match = '/^(0[0-9]{2,3}-)?([2-9][0-9]{6,7})+(-[0-9]{1,4})?$/';
  5. //验证身份证号15或18位
  6. $match = '/(^d{15}$)|(^d{17}(d|X|x)$)/';
  7. //Email验证
  8. $match = '/^w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*$/';
  9. //将手机号中间转换为 * 号
  10. $tel = 18600000000;
  11. $pattern = '/(d{3})d{4}(d{3})/';
  12. $replacement = "$1****$2";
  13. echo preg_replace($pattern,$replacement,$tel);