The replaceAll(Function) method of Matcher Class behaves as a append-and-replace method. This method replaces all instances of the pattern matched in the matcher with the function passed in the parameter.
Syntax:
public String replaceAll(
Function replacerFunction)
Parameters: This method takes a parameter replacerFunction which is the function that defines the replacement of the matcher.
Return Value: This method returns a String with the target String constructed by replacing the String.
Exceptions: This method throws following exceptions:
- NullPointerException: if the replacer function is null
- ConcurrentModificationException: if it is detected that the replacer function modified this matcher’s state
Below examples illustrate the Matcher.replaceAll() method:
Example 1:
Java
// Java code to illustrate replaceAll() methodimport java.util.regex.*;public class GFG { public static void main(String[] args) { // Get the regex to be checked String regex = "(Geeks)"; // Create a pattern from regex Pattern pattern = Pattern.compile(regex); // Get the String to be matched String stringToBeMatched = "GeeksForGeeks Geeks for For Geeks Geek"; // Create a matcher for the input String Matcher matcher = pattern.matcher(stringToBeMatched); System.out.println("Before Replacement: " + stringToBeMatched); // Get the String to be replaced String stringToBeReplaced = "Geeks"; StringBuilder builder = new StringBuilder(); // Replace every matched pattern // with the target String // using replaceAll() method System.out.println("After Replacement: " + matcher .replaceAll( x -> x.group().toUpperCase())); }} |
Output:
Before Replacement: GeeksForGeeks Geeks for For Geeks Geek After Replacement: GEEKSForGEEKS GEEKS for For GEEKS Geek
Example 2:
Java
// Java code to illustrate replaceAll() methodimport java.util.regex.*;public class GFG { public static void main(String[] args) { // Get the regex to be checked String regex = "(FGF)"; // Create a pattern from regex Pattern pattern = Pattern.compile(regex); // Get the String to be matched String stringToBeMatched = "GFGFGFGFGFGFGFGFGFG FGF GFG GFG FGF"; // Create a matcher for the input String Matcher matcher = pattern.matcher(stringToBeMatched); System.out.println("Before Replacement: " + stringToBeMatched); // Get the String to be replaced String stringToBeReplaced = "(GFG)"; StringBuilder builder = new StringBuilder(); // Replace every matched pattern // with the target String // using replaceAll() method System.out.println("After Replacement: " + matcher .replaceAll( x -> x.group().toLowerCase())); }} |
Output:
Before Replacement: GFGFGFGFGFGFGFGFGFG FGF GFG GFG FGF After Replacement: GfgfGfgfGfgfGfgfGFG fgf GFG GFG fgf
