Re: regex question

From: Date: Mon, 07 Mar 2005 18:56:05 +0000
Subject: Re: regex question
References: 1  Groups: php.db 
Request: Send a blank email to php-db+get-38802@lists.php.net to get a copy of this message
At 11:04 3/7/2005, Chip Wiegand wrote: >I am writing some regex on a php form to validate input and have come up >with this, for example - > >if (empty($first) || !eregi("^[A-Za-z]+[- ]?[A-Za-z]+$", $first)) > >for checking a persons name. This allows a single name, or a hyphenated >double name, or a non-hyphenated double name, and it works. My question is >this - why is the third set followed by a '+' optional? I thought the + >meant the preceding group is present 1 or more times. The ? means the >preceding group is present 0 or more times. Why is it that when I put a ? >in the place of the + after the last ] > >if (empty($first) || !eregi("^[A-Za-z]+[- ]?[A-Za-z]?$", $first)) > >the regex is broken? > >Regards, >Chip If you want to add the capability for those weird, foreign names [ ;^) ], take a look at the RegEx on this page: http://www.RegExLib.com/UserPatterns.aspx?authorId=45511 Start Here to Find It Fast!™ -> http://www.US-Webmasters.com/best-start-page/ $8.77 Domain Names -> http://domains.us-webmasters.com/

« previous php.db (#38802) next »