w3resource

Java programming Exercises: Add a dash before and after every vowel in a given string

Java Regular Expression: Exercise-27 with Solution

Write a Java program to add a dash before and after every vowel in a given string.

The word vowel comes from the Latin word vocalis, 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.

Sample Solution-1:

Java Code:

public class test { 
   public static void main(String[] args) {	   
	    String text = "C++";
		System.out.println("Original string: "+text);
		System.out.println("Add a dash before and after every vowel in the said string: "+validate(text));
		text = "Java";
		System.out.println("\nOriginal string: "+text);
		System.out.println("Add a dash before and after every vowel in the said string: "+validate(text));
		text = "MID-CENTRALIZED";
		System.out.println("\nOriginal string: "+text);
		System.out.println("Add a dash before and after every vowel in the said string: "+validate(text));
		text = "LOWERED";
		System.out.println("\nOriginal string: "+text);
		System.out.println("Add a dash before and after every vowel in the said string: "+validate(text));
        }

   public static String validate(String text) {
	   return text.replaceAll("([AEIOUaeiou])","-$1-");
   }
}

Sample Output:

Original string: C++
Add a dash before and after every vowel in the said string: C++

Original string: Java
Add a dash before and after every vowel in the said string: J-a-v-a-

Original string: MID-CENTRALIZED
Add a dash before and after every vowel in the said string: M-I-D-C-E-NTR-A-L-I-Z-E-D

Original string: LOWERED
Add a dash before and after every vowel in the said string: L-O-W-E-R-E-D

Pictorial Presentation:

Java Regular Expression: Last n vowels of a given string.

Flowchart :

Flowchart: Last n vowels of a given string.

Sample Solution-2:

Java Code:

public class test { 
   public static void main(String[] args) {	   
	    String text = "C++";
		System.out.println("Original string: "+text);
		System.out.println("Add a dash before and after every vowel in the said string: "+validate(text));
		text = "Java";
		System.out.println("\nOriginal string: "+text);
		System.out.println("Add a dash before and after every vowel in the said string: "+validate(text));
		text = "MID-CENTRALIZED";
		System.out.println("\nOriginal string: "+text);
		System.out.println("Add a dash before and after every vowel in the said string: "+validate(text));
		text = "LOWERED";
		System.out.println("\nOriginal string: "+text);
		System.out.println("Add a dash before and after every vowel in the said string: "+validate(text));
        }
   public static String validate(String text) {
	   return text.replaceAll("(?i)([AEIOU])", "-$1-");
   }
}

Sample Output:

Original string: C++
Add a dash before and after every vowel in the said string: C++

Original string: Java
Add a dash before and after every vowel in the said string: J-a-v-a-

Original string: MID-CENTRALIZED
Add a dash before and after every vowel in the said string: M-I-D-C-E-NTR-A-L-I-Z-E-D

Original string: LOWERED
Add a dash before and after every vowel in the said string: L-O-W-E-R-E-D

Flowchart :

Flowchart: Last n vowels of a given string.

Java Code Editor:

Contribute your code and comments through Disqus.

Previous: Check whether a given string is a valid hex code or not.

Next: Reverse the words of length higher than 3 in a given string.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Java: Tips of the Day

Split Java String by New Line

String lines[] = string.split("\\r?\\n");

There's only really two newlines (UNIX and Windows) that you need to worry about.

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