常用正则表达式

<?php
// 说明:
// $count   匹配次数(可能是0),或者如果发生错误返回false。
// $matches 保存匹配结果。

// 匹配正整数
$count = preg_match_all('/[1-9]\d*/', $subject, $matches);

// 匹配负整数
$count = preg_match_all('/-[1-9]\d*/', $subject, $matches);

// 匹配手机号
$count = preg_match_all('/(13\d|14[579]|15[^4\D]|17[^49\D]|18\d)\d{8}/', $subject, $matches);

// 匹配邮箱【不推荐,强烈推荐使用filter_var()检查】
$count = preg_match_all('/\w[-\w.+]*@([A-Za-z0-9][-A-Za-z0-9]+\.)+[A-Za-z]{2,14}/', $subject, $matches);

// 匹配IPV4地址【不推荐,强烈推荐使用filter_var()检查】
$count = preg_match_all('/\d{0,3}\.\d{0,3}\.\d{0,3}\.\d{0,3}/', $subject, $matches);

// 匹配中文(不含全角标点符号)
$count = preg_match_all('/[\x{4e00}-\x{9fa5}]+/u', $subject, $matches);

// 匹配中文(含全角标点符号)
$count = preg_match_all('/[^\x00-\xff]+/', $subject, $matches);

// 匹配“时:分:秒”
$count = preg_match_all('/([01]?\d|2[0-3]):[0-5]?\d:[0-5]?\d/', $subject, $matches);

// 匹配“年-月-日”
$count = preg_match_all('/(([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3})-(((0[13578]|1[02])-(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)-(0[1-9]|[12][0-9]|30))|(02-(0[1-9]|[1][0-9]|2[0-8]))))|((([0-9]{2})(0[48]|[2468][048]|[13579][26])|((0[48]|[2468][048]|[3579][26])00))-02-29)/', $subject, $matches);

Copyright © 2024 码农人生. All Rights Reserved