# [EMAIL PROTECTED] / 2007-01-17 16:59:26 +0100:
> Roman Neuhauser wrote:
> > re_format(7) on FreeBSD:
> > 
> >      A bracket expression is a list of characters enclosed in `[]'.
> >      (...)
> >      If two characters in the list are separated by `-', this is
> >      shorthand for the full range of characters between those two
> >      (inclusive) in the collating sequence, e.g. `[0-9]' in ASCII
> >      matches any decimal digit.
> >      (...)
> >      Ranges are very collating-sequence-dependent, and portable programs
> >      should avoid relying on them.
> 
> one other thing ...
> 
> wouldn't it be fair to assume (safety through paranoia) that
> ctype_alnum() would suffer the same problem? (given the manual's
> indication that ctype_alnum() and the offending regexp are equivalent?)

isalnum(3) uses isalpha(3) and isdigit(3), so yes, their results are
locale-dependent (LC_CTYPE, see setlocale(3)), but don't depend on
collating sequence.  isdigit(3):

     The isdigit() function tests for a decimal digit character.  Regardless
     of locale, this includes the following characters only:

     ``0''         ``1''         ``2''         ``3''         ``4''
     ``5''         ``6''         ``7''         ``8''         ``9''

-- 
How many Vietnam vets does it take to screw in a light bulb?
You don't know, man.  You don't KNOW.
Cause you weren't THERE.             http://bash.org/?255991

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to