w3resource

Java programming Exercises: Separate consonants and vowels from a given string

Java Regular Expression: Exercise-24 with Solution

Write a Java program to separate consonants and vowels from a given string.

Pictorial Presentation:

Java-Exercises: Separate consonants and vowels from a given string.

Sample Solution-1:

Java Code:

public class test {
 
   public static void main(String[] args) {	   
	    String text ="Java";
		System.out.println("Original String: "+text);
		System.out.println("Separate consonants and vowels of the said string: "+validate(text));
		text ="JavaScript";
		System.out.println("\nOriginal String: "+text);
		System.out.println("Separate consonants and vowels of the said string: "+validate(text));
		text ="SQLite";
		System.out.println("\nOriginal String: "+text);
		System.out.println("Separate consonants and vowels of the said string: "+validate(text));		
	}

   public static String validate(String text) {
		String text1 = text.replaceAll("(?i)[^aeiou]", "");
		String text2 = text.replaceAll("(?i)[aeiou]", "");
		return text2 + text1;
   }
}

Sample Output:

Original String: Java
Separate consonants and vowels of the said string: Jvaa

Original String: JavaScript
Separate consonants and vowels of the said string: JvScrptaai

Original String: SQLite
Separate consonants and vowels of the said string: SQLtie

Pictorial Presentation:

Java Regular Expression: Separate consonants and vowels from a given string.

Flowchart :

Flowchart: Separate consonants and vowels from a given string.

Sample Solution-2:

Java Code:

public class test {
 
   public static void main(String[] args) {	   
	    String text ="Java";
		System.out.println("Original String: "+text);
		System.out.println("Separate consonants and vowels of the said string: "+validate(text));
		text ="JavaScript";
		System.out.println("\nOriginal String: "+text);
		System.out.println("Separate consonants and vowels of the said string: "+validate(text));
		text ="SQLite";
		System.out.println("\nOriginal String: "+text);
		System.out.println("Separate consonants and vowels of the said string: "+validate(text));		
	}

   public static String validate(String text) {
	    return text.replaceAll("[AEIOUaeiou]", "") +
		text.replaceAll("[^AEIOUaeiou]", "");
   }
}

Sample Output:

Original String: Java
Separate consonants and vowels of the said string: Jvaa

Original String: JavaScript
Separate consonants and vowels of the said string: JvScrptaai

Original String: SQLite
Separate consonants and vowels of the said string: SQLtie

Flowchart :

Flowchart: Separate consonants and vowels from a given string.

Java Code Editor:

Contribute your code and comments through Disqus.

Previous: Move all lower case letters to the front, keeping the order of all the letters of a given word.

Next: Last n vowels of a given 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