使用php的模式进行字符串验证


String validation with a pattern with php

我需要检查像1234567 01-01-74这样的字符串(不带引号)。

我的字符串的第一个数值长度必须是7位,后跟空格,然后是日期字符串,在日、月和年数字之间有-

我该怎么做?

如果我正确理解你的问题,下面的正则表达式应该工作:

('d{7}) 'd{2}-'d{2}-'d{2}

使用preg_match()可以测试一个字符串是否有效:

// The "i" after the pattern delimiter indicates a case-insensitive search
if(preg_match("/('d{7}) 'd{2}-'d{2}-'d{2}/i", "1234567 01-01-74")) 
{
    // Valid string code here
    echo "Valid";
}
else 
{
    // Bad string code here
    echo "Not valid! Ogblog!";
}