Java PatternSyntaxException Clase getPattern() Método con ejemplos

Java proporciona expresiones regulares o Regex (en resumen) API para crear patrones de string para buscar, manipular y editar una string en Java. Esta clase se define en el paquete java.util.regex y se centra en la excepción no verificada que significa un error de sintaxis en un patrón de expresión regular. Esta clase se puede declarar usando la siguiente sintaxis,

Sintaxis:

public class PatternSyntaxException extends IllegalArgumentException

Esta clase tiene el siguiente constructor:

PatternSyntaxException(String desc, String regex, int index) // It instantiates a new object of this class

PatternSyntaxException método getPattern()

Este método recupera patrones de expresiones regulares erróneos. Este método se puede invocar en el objeto instanciado de la clase PatternSyntaxException utilizando la siguiente sintaxis.

Sintaxis:

public String getPattern()

Tipo de devolución: este método devuelve una string, es decir, un patrón erróneo.

Ejemplo 1: En este ejemplo, hemos definido un patrón invocando el método compile() de la clase Pattern. Acepta expresión regular (“[“) como argumento y genera un patrón. Luego, estamos llamando al método matcher() en el objeto instanciado de la clase Pattern. Acepta entrada como parámetro. Esto verificará la expresión regular (patrón) en la string de entrada. Además, hemos llamado al método replaceAll() en el objeto comparador. Esto reemplazará cada subsecuencia de la secuencia de entrada que coincida con el patrón por la string de reemplazo dada.

Tenga en cuenta que hemos incluido estas declaraciones dentro de un bloque Try. En este caso, arrojará un error de sintaxis en el patrón de expresión regular y eso se maneja a través del bloque catch. El bloque catch acepta el objeto de la clase PatternSyntaxException y, finalmente, hemos invocado el método getPattern() en este objeto.

Java

// Java program to illustrate the 
// working of getPattern() method
  
import java.io.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.util.regex.PatternSyntaxException;
  
class GFG {
  
    private static String regularExpression = "[";
    private static String input
        = "GeeksforGeeks "
          + "is a learning platform.";
    private static String replace = "Hi";
  
    public static void main(String[] args)
    {
  
        try {
            // Compile the pattern
            Pattern pattern
                = Pattern.compile(regularExpression);
  
            // To get a matcher object
            Matcher matcher = pattern.matcher(input);
            input = matcher.replaceAll(replace);
        }
        catch (PatternSyntaxException e) {
  
            // Print the erroneous of the
            // Regular expression pattern
            System.out.println("Pattern: "
                               + e.getPattern());
        }
    }
}
Producción

Pattern: [

Ejemplo 2: En este ejemplo, hemos definido un patrón invocando el método compile() de la clase Patrón. Acepta expresión regular (“{“) como argumento y genera un patrón. Luego, estamos llamando al método matcher() en el objeto instanciado de la clase Pattern. Acepta entrada como parámetro. Esto verificará la expresión regular (patrón) en la string de entrada que es igual a «Geeks» + «es una plataforma de aprendizaje». Además, hemos llamado al método replaceAll() en el objeto comparador. Esto reemplazará cada subsecuencia de la secuencia de entrada que coincida con el patrón por la string de reemplazo dada.

Tenga en cuenta que hemos incluido estas declaraciones dentro de un bloque Try. En este caso, arrojará un error de sintaxis en el patrón de expresión regular y eso se maneja a través del bloque catch. El bloque catch acepta el objeto de la clase PatternSyntaxException y, finalmente, hemos invocado el método getMessage() en este objeto.

Java

// Java program to illustrate the working of getPattern()
// method
  
import java.io.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.util.regex.PatternSyntaxException;
  
class GFG {
  
    // Declaring a string variable to store the regular
    // expression
    private static String regularExpression = "{";
    private static String input
        = "GeeksforGeeks "
          + "is a learning platform.";
    private static String replace = "Hello";
  
    public static void main(String[] args)
    {
  
        try {
  
            // Compile the pattern
            Pattern pattern
                = Pattern.compile(regularExpression);
  
            // To get a matcher object
            Matcher matcher = pattern.matcher(input);
            input = matcher.replaceAll(replace);
        }
        catch (PatternSyntaxException e) {
  
            // Print the erroneous of the
            // Regular expression pattern
            System.out.println("Pattern: "
                               + e.getPattern());
        }
    }
}
Producción

Pattern: {

Publicación traducida automáticamente

Artículo escrito por bhuwanesh 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 *