Regular Expression "\G" Metacharacter in Java

JavaObject Oriented ProgrammingProgramming

The subexpression/metacharacter “\G” matches the point where the last match finished.

Example

import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class RegexExample {
   public static void main( String args[] ) {
      String regex = "\\G[0-9]";
      Scanner sc = new Scanner(System.in);
      System.out.println("Enter a string: ");
      String input = sc.nextLine();
      Pattern p = Pattern.compile(regex);
      Matcher m = p.matcher(input);
      int count = 0;
      String digits = "";
      System.out.println("Digits in the previous match:");
      while(m.find()) {
         System.out.print(m.group());
         count ++;
      }
      System.out.println();
      System.out.println("Number of matches: "+count);
   }
}

Output

Enter a string:
555 sample text
Digits in the previous match:
555
Number of matches: 3
raja
Published on 19-Nov-2019 06:53:18
Advertisements