Re: ereg.
| From: | liljim | Date: | Wed, 18 Dec 2002 17:16:01 +0000 |
| Subject: | Re: ereg. | ||
| References: | 1 2 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-128754@lists.php.net to get a copy of this message | ||
Instead of:
(!ereg("^([a-zA-ZåÅäÄöÖ]{4,20})\$", $_REQUEST['f_name']))
Try:
(!ereg("^[a-zA-ZåÅäÄöÖ]{4,20}$", $_REQUEST['f_name']))
(You don't need the brackets unless you're wanting to get the output of the
matches, which in this case, it doesn't look as though you do)....
Better still:
(!preg_match("!^[a-zåÅäÄöÖ]{4,20}$!is", $_REQUEST['f_name']))
James
"1lt John W. Holmes" <holmes072000@charter.net> wrote in message
news:002301c2a6b3$a5a695f0$a629089b@TBHHCCDR...
> ^ is only NOT when it's the first character within brackets, [ and ].
Also,
> don't escape the $ at the end if you really want it to match the end of
the
> string. Right now your regular expression is matching a literal dollar
sign.
>
> As for the original question, it looks correct, providing you can have
those
> swedish characters in the brackets. What if you just simplify things and
> make your ereg look to match a single one of those swedish chacters? Will
it
> validate correctly if that's all you pass? Play with taking them in and
out
> and see what works.
>
> ---John Holmes...
>
> ----- Original Message -----
> From: "Wico de Leeuw" <wico-php-general@newcorps.biz>
> To: "Anders Thoresson" <listor@thoresson.net>;
> <php-general@lists.php.net>
> Sent: Wednesday, December 18, 2002 11:26 AM
> Subject: Re: [PHP] ereg.
>
>
> ^ is not in this case
> Try
> if(!ereg("^([a-zA-ZåÅäÄöÖ]{4,20})\$", $_REQUEST['f_name'])) {
>
> Added the $ at the end else the could be more then 20 chars
>
> Greetz
>
> At 17:20 18-12-02 +0100, Anders Thoresson wrote:
> >What's wrong with the following regular expression? As far as I can se,
> >only alphabetic characters including the special swedish ones, should be
> >let through, but whatever character passed on in $_REQUEST['f_name']
> >passes the test?
> >
> > if(!ereg("(^[a-zA-ZåÅäÄöÖ]{4,20})",
> > $_REQUEST['f_name'])) {
> > error("Your first name should be between 4 and 20
> > alphabetic characters");
> > }
> >
> >The next one, used to check valid birthday dates, work. And I can't see
> >where they differ!
> >
> > if(!ereg("([0-9]{4})-([0-9]{2})-([0-9]{2})",
> $_REQUEST['birthday']))
> >
> >Br,
> >
> > Anders
> >
> >
> >--
> >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
>