CodeGym/Blog Java/Random-ES/Java Regex - Comparador
John Squirrels
Nivel 41
San Francisco

Java Regex - Comparador

Publicado en el grupo Random-ES

¿Qué es una expresión regular en Java?

Una expresión regular o expresión regular es una secuencia de caracteres que forman un patrón. Cuando busque datos, puede utilizar este patrón especializado para encontrar cadenas coincidentes. Puede ser tan simple como un solo carácter o puede ser un patrón más complejo. En Java, tiene un paquete de expresiones regulares de Java que tiene clases que brindan la posibilidad de usar expresiones regulares para la búsqueda y manipulación de patrones. Este paquete se importa a su código de la siguiente manera.

import java.util.regex.*;

Java Regex - Comparador

La clase Java Matcher proporciona coincidencia de patrones con expresiones regulares.
Esta línea de código importa todas las clases disponibles en el paquete regex. Si desea importar solo la clase Matcher , puede importarla usando la siguiente línea de código.

import java.util.regex.Matcher;
El paquete java regex tiene tres clases:
  1. Clase de patrón : para definir el patrón que se debe buscar.

  2. Clase Matcher : para hacer coincidir el patrón en el texto y encontrarlo.

  3. Clase PatternSyntaxException : para indicar cualquier error de sintaxis en la expresión regular.

Su funcionamiento es bastante sencillo. Primero, crea un objeto Patrón a partir de la expresión regular para definir un patrón. Luego se crea un objeto Matcher usando el objeto Pattern . La clase Matcher tiene muchos métodos. El más importante de ellos es el métodomatches() que devuelve verdadero si la expresión regular coincide con el texto; en caso contrario, devuelve falso . Java Matcher Class tiene muchos otros métodos útiles para reemplazar texto en las cadenas de entrada que realizan funciones más complejas que los métodos replace() en Java. Sólo hay dos métodos replace() en Java, mientras que la clase Matcher proporciona múltiples funciones para esta tarea.

Métodos de clase Java Matcher

Algunos de los métodos de la clase Java Matcher se describen a continuación.
  • coincidencias booleanas() : devuelve verdadero si la expresión regular coincide con el patrón.

  • boolean find() : busca la siguiente expresión regular que coincida con el patrón.

  • boolean find(int start) : busca la siguiente expresión regular que coincide con el patrón desde el inicio dado.

  • int start() : devuelve el índice inicial del partido.

  • int end() : devuelve el índice final de la coincidencia devuelta.

  • int groupCount() : devuelve el número total de grupos en la coincidencia.

  • String replaceAll(Reemplazo de cadena) : reemplaza cada subsecuencia de la coincidencia con el reemplazo dado.

  • String replaceFirst(Reemplazo de cadena) : reemplaza la primera subsecuencia de la coincidencia con el reemplazo dado.

Ejemplo de comparación de Java

Hay muchos métodos útiles para la clase Matcher ; sin embargo, veremos más adelante los ejemplos específicos del métodomatches() .

Usando el método coincidencias()

A continuación se muestra un ejemplo de Java Matcher para el métodomatches() .

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class Example {

	public static void main(String[] args) {

		String regexPattern = "(.*)apple(.*)"; // this regex means that any char sequence can precede or succeed "apple" 
		String firstCheck = "Apples";
		String secondCheck = "Apple";
		String thirdCheck = "apple";
		String fourthCheck = "An apple a day keeps the doctor away.";
		String fifthCheck = "green apple, yellow apple, red apple, i love all kinds of apples.";

		
		Pattern pattern = Pattern.compile(regexPattern);
		Matcher matcher1 = pattern.matcher(firstCheck);

		System.out.println("The Pattern  is: " + pattern);
		System.out.println("Text to check is: " + firstCheck);
		System.out.println("Output for matches(): " + matcher1.matches() + "\n");

		Matcher matcher2 = pattern.matcher(secondCheck);

		System.out.println("The Pattern  is: " + pattern);
		System.out.println("Text to check is: " + secondCheck);
		System.out.println("Output for matches(): " + matcher2.matches() + "\n");

		Matcher matcher3 = pattern.matcher(thirdCheck);

		System.out.println("The Pattern  is: " + pattern);
		System.out.println("Text to check is: " + thirdCheck);
		System.out.println("Output for matches(): " + matcher3.matches() + "\n");
		
		Matcher matcher4 = pattern.matcher(thirdCheck);

		System.out.println("The Pattern  is: " + pattern);
		System.out.println("Text to check is: " + fourthCheck);
		System.out.println("Output for matches(): " + matcher4.matches() + "\n");
		
		Matcher matcher5 = pattern.matcher(fifthCheck);

		System.out.println("The Pattern  is: " + pattern);
		System.out.println("Text to check is: " + fifthCheck);
		System.out.println("Output for matches(): " + matcher5.matches() + "\n");
	}
}
Producción
El patrón es: (.*)apple(.*) El texto a verificar es: Apples Salida para coincidencias(): false El patrón es: (.*)apple(.*) El texto a verificar es: Apple Salida para coincidencias() : falso El patrón es: (.*)manzana(.*) El texto a verificar es: manzana Salida para coincidencias(): verdadero El patrón es: (.*)manzana(.*) El texto a verificar es: Una manzana al día mantiene alejado al médico. Salida para coincidencias(): verdadero El patrón es: (.*)manzana(.*) El texto a verificar es: manzana verde, manzana amarilla, manzana roja, me encantan todos los tipos de manzanas. Salida para coincidencias(): verdadero

Conclusión

Al final de esta publicación, esperamos que se haya familiarizado con la clase Java Matcher en Java. Ha aprendido a usarlo en su código. También ha aprendido a llamar al métodomatches() de Matcher Class. Puede probar otros métodos de la clase Matcher por su cuenta para comprenderlo con más profundidad. Continúe practicando para obtener un dominio más profundo del concepto. Hasta entonces, ¡sigue creciendo y sigue brillando!
Comentarios
  • Populares
  • Nuevas
  • Antiguas
Debes iniciar sesión para dejar un comentario
Esta página aún no tiene comentarios