Método Matcher start (String) en Java con ejemplos

El método start(String string) de Matcher Class se usa para obtener el índice de inicio del resultado de la coincidencia ya realizado, a partir de la string especificada.

Sintaxis:

public int start(String string)

Parámetros: este método toma una string de parámetros que es la string a partir de la cual se requiere el índice de inicio del patrón coincidente.

Valor devuelto: este método devuelve el índice del primer carácter coincidente de la string especificada.

Excepción: este método arroja:

  • IllegalStateException si aún no se ha intentado ninguna coincidencia o si la operación de coincidencia anterior falló.
  • IndexOutOfBoundsException si no hay ningún grupo de captura en el patrón con el nombre dado.

Los siguientes ejemplos ilustran el método Matcher.start():

Ejemplo 1:

// Java code to illustrate start() method
  
import java.util.regex.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // Get the regex to be checked
        String regex = "\\b(?<Geeks>[A-Za-z\\s]+)";
  
        // Create a pattern from regex
        Pattern pattern
            = Pattern.compile(regex);
  
        // Get the String to be matched
        String stringToBeMatched
            = "GeeksForGeeks";
  
        // Create a matcher for the input String
        Matcher matcher
            = pattern
                  .matcher(stringToBeMatched);
  
        // Get the current matcher state
        MatchResult result
            = matcher.toMatchResult();
        System.out.println("Current Matcher: "
                           + result);
  
        while (matcher.find()) {
            // Get the first index of match result
            System.out.println(matcher.start("Geeks"));
        }
    }
}
Producción:

Comparador actual: java.util.regex.Matcher[pattern=\b(?[A-Za-z\s]+) region=0,13 lastmatch=]
0

Ejemplo 2:

// Java code to illustrate start() method
  
import java.util.regex.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // Get the regex to be checked
        String regex = "\\b(?<GFG>[A-Za-z\\s]+)";
  
        // Create a pattern from regex
        Pattern pattern
            = Pattern.compile(regex);
  
        // Get the String to be matched
        String stringToBeMatched
            = "   GFGFGFGFGFGFGFGFGFG";
  
        // Create a matcher for the input String
        Matcher matcher
            = pattern
                  .matcher(stringToBeMatched);
  
        // Get the current matcher state
        MatchResult result
            = matcher.toMatchResult();
        System.out.println("Current Matcher: "
                           + result);
  
        while (matcher.find()) {
            // Get the first index of match result
            System.out.println(matcher.start("GFG"));
        }
    }
}
Producción:

Comparador actual: java.util.regex.Matcher[pattern=\b(?[A-Za-z\s]+) region=0,22 lastmatch=]
3

Referencia: documento de Oracle

Publicación traducida automáticamente

Artículo escrito por Kirti_Mangal y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *