Re: PCRE regexp bug ?

From: Date: Fri, 15 Aug 2003 20:00:43 +0000
Subject: Re: PCRE regexp bug ?
References: 1  Groups: php.general 
Request: Send a blank email to php-general+get-159753@lists.php.net to get a copy of this message
Thank you. I did the following: if (isset($_POST[MI]) && (preg_match('/^[[:alpha:]]{1,1}$/', $_POST[MI]) == 0)) and zero is caught. On Fri, 15 Aug 2003, CPT John W. Holmes wrote: > From: <tpc@csua.berkeley.edu> > > > I use preg_match to validate the Middle Initial field of a form and so far > > it works, except yesterday a user submitted a "0" (zero) as a middle > > initial! My regexp is: > > > > if (!empty($_POST[MI]) && (preg_match('/^[[:alpha:]]{1,1}$/', > > $_POST[MI]) > == 0)) > > > > I tested it with 0-9 and my regexp catches every digit except 0. > Curious... > > empty("0") is going to be true. So, !empty("0") is going to be false, so > you > won't "catch" the zero. > > ---John Holmes... > >

« previous php.general (#159753) next »