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 code to illustrate replaceAll() method import 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 code to illustrate replaceAll() method import 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