On Thu, 4 Jul 2002, SP wrote:
> Hi I am trying to check if a word contains only capital letters.  For
> some reason it's not working.  The below example is checking the word
> "weird" to see if it's all capital letters but it's saying it's matches.  
> I've tried checking for only lower case letters with "WEIRD" and it's
> not working there too.  What am I doing wrong?
> $pattern = "A-Z";
> $regexp = '/^['.$pattern.']*$/i';
> if( preg_match($regexp, "weird") )
>       echo "matches";
> else
>       echo "does not match";

Easiest approach:

  if ($str != strtoupper($str))
    echo 'String contains lower-case letters.';

Using preg:

  if (preg_match('/[a-z]/', $str))
    echo 'String contains lower-case letters.';

If you don't want any other characters to appear, ONLY capital letters 
(your question was a little ambiguous to me):

  if (preg_match('/[^A-Z]/', $str))
    echo 'String contains something other than capital letters.';


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

Reply via email to