The appendTail(StringBuffer) method of Matcher Class behaves as a append-and-replace method. This method reads the input string and appends it to the given StringBuffer at the tail position.
Syntax:
public StringBuffer appendTail(StringBuffer buffer)
Parameters: This method takes a parameter buffer which is the StringBuffer that stores the target string.
Return Value: This method returns a StringBuffer with the target String replaced.
Below examples illustrate the Matcher.appendTail() method:
Example 1:
// Java code to illustrate appendTail() 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" ; StringBuffer buffer = new StringBuffer(); // Replace every matched pattern // with the target String while (matcher.find()) { matcher.appendReplacement(buffer, stringToBeReplaced); } // Add the replaced string at the tail // using the appendTail() method matcher.appendTail(buffer); // Print the replaced matcher System.out.println( "After Replacement: " + buffer.toString()); } } |
Before Replacement: GeeksForGeeks Geeks for For Geeks Geek After Replacement: GEEKSForGEEKS GEEKS for For GEEKS Geek
Example 2:
// Java code to illustrate appendTail() 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 = "FGF FGF FGF 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" ; StringBuffer buffer = new StringBuffer(); // Replace every matched pattern // with the target String while (matcher.find()) { matcher.appendReplacement(buffer, stringToBeReplaced); } // Add the replaced string at the tail // using the appendTail() method matcher.appendTail(buffer); // Print the replaced matcher System.out.println( "After Replacement: " + buffer.toString()); } } |
Before Replacement: FGF FGF FGF FGF After Replacement: GFG GFG GFG GFG