This might work: if(!eregi('(^[a-z][0-9][a-z] ?[0-9][a-z][0-9]$)',$form["authpstcode"])) { $errors[] = 'You must input a valid Canadian postal code (A9A9A9) postal code if he/she resides in Canada'; $continue = false; }
Marco -- ------------ php|architect - The magazine for PHP Professionals The monthly worldwide magazine dedicated to PHP programmers Come visit us at http://www.phparch.com! On Fri, 2002-11-15 at 09:44, DonPro wrote: > Hi, > > I'm trying to validate a Canadian postal code. I've already written a > function; code as follows: > > if(!eregi('(^[a-z][0-9][a-z][0-9][a-z][0-9]$)',$form["authpstcode"])) { > $errors[] = 'You must input a valid Canadian postal code (A9A9A9) postal > code if he/she resides in Canada'; > $continue = false; > } > > The above works OK if the user enters --> M2M6N6 > > But fails if the user enters ---> M2M 6N6 (note the space between the two > triplets) > > I want my function to validate either, i.e., allow a space between the two > triplets but not enforce it. > > Any idea on how to modify my test? > > Thanks, > Don > > > > -- > PHP General Mailing List (http://www.php.net/) > To unsubscribe, visit: http://www.php.net/unsub.php > -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php