Open In App

How to Remove All Punctuation from a String using Regex in Java?

Last Updated : 05 Feb, 2024
Improve
Improve
Like Article
Like
Save
Share
Report

In this article, we will explain how to remove all punctuation from a given String by using Java with the help of Regex. Here regex means regular expression. The regex is a powerful way to explain the search pattern. One more thing is that regular expressions are mostly used for Searching a required pattern, and matching the pattern and the other one is Manipulating text based on the required pattern.

In this article, as per requirement, we used a regex pattern to remove all punctuation from a String. It is possible by using the Text Manipulation Regex Pattern in Java.

What is Punctuation?

In the view of a regular expression, The Word Punctuation refers to the set of characters with no letters, digits, or white spaces. This means the Punctuation contains marks, brackets, Java, and others in Java.

Example:

. , ! ? ( ) { } and others.

Now we will explain a Java program that is used for removing all punctuation from a String in Java using regex. In this Example, we took different types of strings with different Punctuation s. By using regex, we remove all those Punctuation from the given String after that we display the string value. You can observe the below java code.

Example Remove All Punctuation from a String

Below Java code can be able to find the Punctuation symbols from a given String.

Java




import java.util.regex.*;
  
public class RegexExampleOne {
    public static void main(String[] args) {
        String inputString = "Hello, {Welcome to)! GeeksForGeeks.";
  
        // Use regex to match all punctuation characters
        Pattern pattern = Pattern.compile("\\p{Punct}");
        Matcher matcher = pattern.matcher(inputString);
  
        // Find and print all matches
        while (matcher.find()) {
            System.out.println("Match found: " + matcher.group());
        }
  
        if (!matcher.find()) {
            System.out.println("No more matches found.");
        }
    }
}


Output

Match found: ,
Match found: {
Match found: )
Match found: !
Match found: .
No more matches found.


Explanation of the above Program:

  • Now we will explain the above code to better understand the concept, First we need to import the package java.util.regex.*
  • After that we take one String value which contains different types of Punctuation symbols.
  • After that we take Pattern class which available in java.util.regex package which is used for compile the required regular expression.
  • After that we take Matcher class which is used for matching the regular expression.
  • After that we took while loop which is used for displaying the those Punctuation symbols by using matcher.find()

In above example we used below statements for implement the required regex pattern for remove all punctuation from a String in Java using regex.

Pattern pattern = Pattern.compile("\\p{Punct}");

In above line we create one object for Pattern which is pattern. After that In Pattern class we have compile method Pattern.compile(). In this method we passed \\p{Punct} as a String value which is used for matches any punctuation character in given String.

In this way we create An object for Matcher class

Matcher matcher = pattern.matcher(inputString);

Which is used for matching the required pattern by using

pattern.matcher();

This matcher matcher method is used for match the pattern in given String. After that we can remove all punctuation from a String in Java using regex after that print the result Statement.

Example 2:

Java




import java.util.regex.*;
  
public class RegexExampleTwo {
    public static void main(String[] args) {
        // Original String
        String inputString = "Hello, {Welcome to)! GeeksForGeeks.";
  
        // Result String after remove all punctuation characters
        String resultString = inputString.replaceAll("\\p{Punct}", "");
  
         // Print the original and modified strings
        System.out.println("Original String: " + inputString);
        System.out.println("String without punctuation: " + resultString);
    }
}


Output

Original String: Hello, {Welcome to)! GeeksForGeeks.
String without punctuation: Hello Welcome to GeeksForGeeks


In this above code, we have removed all punctuation from a String in Java by using regex (\\p{Punct}). After that print that statement. In First statement we have different types of punctuation characters after applying the regex for removing all punctuation from a String I got the required Result which is Hello Welcome to GeeksForGeeks.



Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads