How to count the number of times each word appears in a String using regex in Java

1 Answer

0 votes
import java.util.HashMap;
import java.util.Map;

public class CountNumberOfTimesEachWordAppearInAStringUsingRegex_Java {
    public static void main(String[] args) {
        final String s = "java c++ python cpp php java c c java c";
        
        String[] words = s.split("([\\W]+)");
        
        Map<String, Integer> WordsCounter = new HashMap<String, Integer>();
        
        for (String word: words) {
            if (WordsCounter.containsKey(word)) {
                WordsCounter.put(word, WordsCounter.get(word) + 1);
            } else {
                WordsCounter.put(word, 1);
            }
        }
        
        for (Map.Entry<String, Integer> entry:WordsCounter.entrySet()) {
            System.out.println(entry.getKey() + ": " + entry.getValue());
        }
    }
}


   
/*
run:
   
python: 1
cpp: 1
java: 3
c: 4
php: 1
   
*/

 



answered Aug 21, 2024 by avibootz
...