w3resource

Java programming Exercises: Count number of vowels in a given string using regular expression

Java Regular Expression: Exercise-14 with Solution

The word vowel comes from the Latin word vocal is, meaning "vocal" (i.e. relating to the voice). In English, the word vowel is commonly used to refer both to vowel sounds and to the written symbols that represent them (a, e, o, u, y), and sometimes I

Write a Java program to count number of vowels in a given string using regular expression.

Here we consider a, e, i, o, u are vowels (not y).

Sample Solution:

Java Code:

public class test { 
   public static void main(String[] args) {	   
	    String text ="C++";
		System.out.println("Original string: "+text);
		System.out.println("New string: "+validate(text));
		text ="Java";
		System.out.println("\nOriginal string: "+text);
		System.out.println("New string: "+validate(text));
		text ="MID-CENTRALIZED";
		System.out.println("\nOriginal string: "+text);
		System.out.println("New string: "+validate(text));
		text ="LOWERED";
		System.out.println("\nOriginal string: "+text);
		System.out.println("New string: "+validate(text));
        }

   public static int validate(String text) {
	   return text.replaceAll("[^aeiouAEIOU]", "").length();
   }
}

Sample Output:

Original string: C++
New string: 0

Original string: Java
New string: 2

Original string: MID-CENTRALIZED
New string: 5

Original string: LOWERED
New string: 3

Pictorial Presentation:

Java Regular Expression: Count number of vowels in a given string using regular expression.

Flowchart :

Flowchart: Count number of vowels in a given string using regular expression.

Java Code Editor:

Contribute your code and comments through Disqus.

Previous: Find and replace a word in a given string.

Next: Remove all the vowels of a given string and return the new string.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.

Share this Tutorial / Exercise on : Facebook and Twitter

Java: Tips of the Day

What is the best way to filter a Java Collection?

Java 8 (2014) solves this problem using streams and lambdas in one line of code:

List<Person> beerDrinkers = persons.stream()
    .filter(p -> p.getAge() > 16).collect(Collectors.toList());

Use Collection#removeIf to modify the collection in place. (Notice: In this case, the predicate will remove objects who satisfy the predicate):

persons.removeIf(p -> p.getAge() <= 16);

lambdaj allows filtering collections without writing loops or inner classes:

List beerDrinkers = select(persons, having(on(Person.class).getAge(),
    greaterThan(16)));

Ref: https://bit.ly/3uwYid6