检查字符串中是否有5位数字

时间:2012-08-20 19:28:33

标签: php search expression

$st1='dsdsdsd 97537 sdsdd dsddd';
$st2='fdsf 23e  sdsd 434  432443454';
$st3='fdf97537 ds344dsddd';

我想检查字符串中是否有5位数字。

st1--有5位数字

st2 ---不是

st3--有5位数字

3 个答案:

答案 0 :(得分:1)

一个简单的正则表达式将完成这项工作。

preg_match('/\d{5}/', $input)

另见http://www.php.net/preg_match

答案 1 :(得分:1)

使用preg_match()preg_match_all()

尝试此正则表达式
preg_match("/\b[^\d]*\d{5}[^\d]*\b/", $str);

答案 2 :(得分:0)

假设要检查的每个元素是否为五位数,则用字符串中的空格分隔。因此,您可以使用explode函数将字符串转换为子字符串数组。接下来,您可以使用is_numeric函数检查是否为数字,并检查该子字符串是否为五个长度。你也可以使用正则表达式。

这里RegEx要好得多。正如我看到@Matt的答案符合这些要求,我的评论将是不必要的。