我在這裏丟失了一些東西。4位數字( d {4})搜索非常簡單的正則表達式誤報
我想看看一個字符串是否包含4位數字。我之前做過這個,但不是多年,不能解決我做錯了什麼。
$ stuff是一個來自mySQL數據庫的字符串。 (目前,從表單來的所以肯定應該工作。)
$stuff=$_POST['stuff'];
$regex="/\d{4}/";
$integerStuff=intval($stuff);//in case somehow seeing as n on-digit!!!
if (preg_match($regex, $integerStuff)) {echo " Found 4 dig";}
我想如果的preg_match沒有發現它返回false的模式,但同時123不匹配,12345等做。
我認爲{4}意味着4次發生。
愚蠢的問題,我知道,但一直困在這個多年。
'{4}'意味着恰好有4個,但你的正則表達式是不固定和字符串中的任何比賽。如果在數字之前有前導垃圾,則'int'強制轉換也可以返回零。 – mario 2014-11-02 23:34:04
@mario謝謝有用的提醒。 – BeNice 2014-11-02 23:41:31