How to check if a word is all uppercase or lowercase or capitalized in C#

1 Answer

0 votes
using System;

class Program
{
     static bool VerifyAllUpperOrAllLowerOrIsCapitalized(string word) {
        int upper = 0;
        int lower = 0;

        foreach (char ch in word) {
            if (char.IsLower(ch)) {
                lower++;
            }
            else if (char.IsUpper(ch)) {
                upper++;
            }
        }

        // Case 1: all lowercase
        if (upper == 0) return true;

        // Case 2: all uppercase
        if (lower == 0) return true;

        // Case 3: capitalized (only first letter uppercase)
        if (upper == 1 && char.IsUpper(word[0])) return true;

        // Otherwise, mixed casing
        return false;
    }

    static void RunTest(string word) {
        Console.WriteLine($"Testing word: \"{word}\"");
        
        if (VerifyAllUpperOrAllLowerOrIsCapitalized(word)) {
            Console.WriteLine("OK\n");
        }
        else {
            Console.WriteLine("Error\n");
        }
    }

    static void Main()
    {
        RunTest("PROGRAMMING");   
        RunTest("programming");   
        RunTest("Programming");  
        RunTest("ProGramMing");   
    }
}



/*
run:

Testing word: "PROGRAMMING"
OK

Testing word: "programming"
OK

Testing word: "Programming"
OK

Testing word: "ProGramMing"
Error

*/

 



answered Oct 27, 2025 by avibootz
...