Open In App

Number of words in a camelcase sequence

CamelCase is the sequence of one or more than one words having the following properties: 

  1. It is a concatenation of one or more words consisting of English letters.
  2. All letters in the first word are lowercase.
  3. For each of the subsequent words, the first letter is uppercase and rest of the letters are lowercase.

Given a CamelCase sequence represented as a string. The task is to find the number of words in the CamelCase sequence. 

Examples: 

Input : str = “geeksForGeeks”
Output : 3

Input : str = “iGotAnInternInGeeksForGeeks”
Output : 8

Approach: As it is already known that the sequence is CamelCase, so it can be said that the number of words in the sequence will be one more than the number of uppercase letters. 

Below is the implementation of the above approach: 




// CPP code to find the count of words
// in a CamelCase sequence
#include <bits/stdc++.h>
using namespace std;
 
// Function to find the count of words
// in a CamelCase sequence
int countWords(string str)
{
    int count = 1;
 
    for (int i = 1; i < str.length() - 1; i++) {
        if (isupper(str[i]))
            count++;
    }
 
    return count;
}
 
// Driver code
int main()
{
    string str = "geeksForGeeks";
 
    cout << countWords(str);
 
    return 0;
}




// Java code to find the count of words
// in a CamelCase sequence
class solution
{
 
// Function to find the count of words
// in a CamelCase sequence
static int countWords(String str)
{
    int count = 1;
 
    for (int i = 1; i < str.length() - 1; i++) {
        if (str.charAt(i)>=65&&str.charAt(i)<=90)
            count++;
    }
 
    return count;
}
 
// Driver code
public static void main(String args[])
{
    String str = "geeksForGeeks";
 
    System.out.print( countWords(str));
 
}
}
//contributed by Arnab Kundu




# Python code to find the count of words
# in a CamelCase sequence
 
# Function to find the count of words
# in a CamelCase sequence
def countWords(str):
    count = 1
    for i in range(1, len(str) - 1):
        if (str[i].isupper()):
            count += 1
 
    return count
 
# Driver code
str = "geeksForGeeks";
print(countWords(str))
 
# This code is contributed
# by sahishelangia




// C# code to find the count of words
// in a CamelCase sequence
using System;
     
class GFG
{
 
// Function to find the count of words
// in a CamelCase sequence
static int countWords(String str)
{
    int count = 1;
 
    for (int i = 1; i < str.Length - 1; i++)
    {
        if (str[i] >= 65 && str[i] <= 90)
            count++;
    }
 
    return count;
}
 
// Driver code
public static void Main(String []args)
{
    String str = "geeksForGeeks";
 
    Console.Write(countWords(str));
 
}
}
 
// This code contributed by Rajput-Ji




<script>
 
// Javascript code to find the count of words
// in a CamelCase sequence
 
// Function to find the count of words
// in a CamelCase sequence
function countWords(str)
{
    let count = 1;
 
    for (let i = 1; i < str.length - 1; i++) {
        if (str[i]>= 'A' && str[i]<= 'Z')
            count++;
    }
 
    return count;
}
 
 
// driver program
     
    let str = "geeksForGeeks";
 
    document.write( countWords(str));
    
</script>

Output
3

Time complexity: O(n)
Auxiliary space: O(1)


Article Tags :