w3resource

Java programming Exercises: Remove the specific letters from a string and return the new string

Java Regular Expression: Exercise-19 with Solution

Write a Java program to remove the specific letters from a string and return the new string. Specific letters: "p", "q", or "r".

If the given string does not contain "p", "q", or "r", return “Not found.”

Sample Solution-1:

Java Code:

public class test {
 
   public static void main(String[] args) {	   
	    String text ="The quick brown fox jumps over the lazy dog.";
		System.out.println("Original Text: "+text);
		System.out.println("Remove p,q,r characters from the said string(if present): "+validate(text));
		text ="Java Exercises.";
		System.out.println("\nOriginal Text: "+text);
		System.out.println("Remove p,q,r characters from the said string(if present): "+validate(text));
		text ="Java linkedlist.";
		System.out.println("\nOriginal Text: "+text);
		System.out.println("Remove p,q,r characters from the said string(if present): "+validate(text));
	    
        }

   public static String validate(String text) {
	     	String s = text.replaceAll("(?i)[pqr]", "");
    return text.equals(s) ? "Not found." : s;
   }
}

Sample Output:

Original Text: The quick brown fox jumps over the lazy dog.
Remove p,q,r characters from the said string(if present): The uick bown fox jums ove the lazy dog.

Original Text: Java Exercises.
Remove p,q,r characters from the said string(if present): Java Execises.

Original Text: Java linkedlist.
Remove p,q,r characters from the said string(if present): Not found.

Pictorial Presentation:

Java Regular Expression: Remove the specific letters from a string and return the new string.

Flowchart :

Flowchart: Remove the specific letters from a string and return the new string.

Sample Solution-2:

Java Code:

public class test {
 
   public static void main(String[] args) {	   
	    String text ="The quick brown fox jumps over the lazy dog.";
		System.out.println("Original Text: "+text);
		System.out.println("Remove p,q,r characters from the said string(if present): "+validate(text));
		text ="Java Exercises.";
		System.out.println("\nOriginal Text: "+text);
		System.out.println("Remove p,q,r characters from the said string(if present): "+validate(text));
		text ="Java linkedlist.";
		System.out.println("\nOriginal Text: "+text);
		System.out.println("Remove p,q,r characters from the said string(if present): "+validate(text));
	    
        }

   public static String validate(String text) {
	   return text.matches(".*[pqrPQR].*") ? text.replaceAll("[pqrPQR]","") : "Not found.";
   }
}

Sample Output:

Original Text: The quick brown fox jumps over the lazy dog.
Remove p,q,r characters from the said string(if present): The uick bown fox jums ove the lazy dog.

Original Text: Java Exercises.
Remove p,q,r characters from the said string(if present): Java Execises.

Original Text: Java linkedlist.
Remove p,q,r characters from the said string(if present): Not found.

Flowchart :

Flowchart: Remove the specific letters from a string and return the new string.

Java Code Editor:

Contribute your code and comments through Disqus.

Previous: Validate a personal identification number (PIN).

Next: Set thousands separator in the said number.

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