count number of words in a string code example

Example 1: count word in string no matter the delimiter java

public static void main(String[] args)
    { 
        //Scanner object instantiation 
        Scanner dude = new Scanner(System.in); 
       
       //variable declaration 
       String string1 = ""; 
       int count = 0; 
       boolean isWord = false; 
       
       
       //user prompt and input 
       System.out.println("Enter in your string"); 
       string1 = dude.nextLine(); 
       
       int endOfLine = string1.length()-1; 
       char ch [] = string1.toCharArray(); 
       
       for (int i = 0; i < string1.length(); i++)
       { 
           if(Character.isLetter(ch[i]) && i != endOfLine)
           {//if character is letter and not end of line
               isWord = true; //it is part of a word 
           }  
           if (!Character.isLetter(ch[i]) && isWord)
           { //if character is not a letter, and previous 
             //character is a letter i.e. non-letter is 
             //preceded by character 
              count++; //add to word count 
              isWord = false; //get ready to detect new word  
           }
           if (Character.isLetter(ch[i]) && i == endOfLine)
           { //if character is letter 
             //and at end of line 
               count++; //add to word count 
               isWord = false; 
           }
           
       } 
       System.out.println("There are " +count+ " words");     
    }

Example 2: how to count words in string

String str = "I am happy and why not
  and why are you not happy and you should be";
        String [] arr = str.split(" ");
        Map<String, Integer> map = new HashMap<>();

        for (int i=0 ; i < arr.length ; i++){
                if (!map.containsKey(arr[i])){
                    map.put(arr[i],1);
                } else{
                    map.put(arr[i],map.get(arr[i])+1);
                }
        }
        for(Map.Entry<String, Integer> each : map.entrySet()){

  System.out.println(each.getKey()+" occures " + each.getValue() + " times");
        }

Example 3: how to count number of words in a string

String name = "Carmen is a fantastic play"; //arbitrary sentence
        
        int numWords = (name.split("\\s+")).length; //split string based on whitespace
                                                //split returns array - find legth of array
        
        System.out.println(numWords);

Example 4: program code for counting the similarwrod in the sentences

public static int count(String word) {
    if (word == null || word.isEmpty()) {
      return 0;
    }

    int wordCount = 0;

    boolean isWord = false;
    int endOfLine = word.length() - 1;
    char[] characters = word.toCharArray();

    for (int i = 0; i < characters.length; i++) {

      // if the char is a letter, word = true.
      if (Character.isLetter(characters[i]) && i != endOfLine) {
        isWord = true;

        // if char isn't a letter and there have been letters before,
        // counter goes up.
      } else if (!Character.isLetter(characters[i]) && isWord) {
        wordCount++;
        isWord = false;

        // last word of String; if it doesn't end with a non letter, it
        // wouldn't count without this.
      } else if (Character.isLetter(characters[i]) && i == endOfLine) {
        wordCount++;
      }
    }

    return wordCount;
  }

Tags:

C Example