English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
La clase java.util.regex.Matcher representa el motor que ejecuta varias operaciones de coincidencia. Esta clase no tiene constructor, se puede usarmatches()
El método de la clase java.util.regex.Pattern crea/Obtener el objeto de esta clase.
Este (Matcher) clasegroup()El método devuelve la subsecuencia de entrada que coincide con la última coincidencia.
import java.util.regex.Matcher; import java.util.regex.Pattern; public class GroupExample { public static void main(String[] args) { String str = "<p>This <b>is</b>un <b>ejemplo</b>HTML <b>script</b>" + "donde <b>cada</b>palabra <b>alternativa</b>es <b>negrita</b>. " + "It <i>also</i>contiene <i>italic</i>palabras</p>"; //La expresión regular se utiliza para coincidir con el contenido de la etiqueta negrita String regex = "<b>(\\S+);/b>|<i>(\\S+);/i>"; //Creación de un objeto de patrón Pattern pattern = Pattern.compile(regex); //Coincidencia de la cadena con el patrón compilado Matcher matcher = pattern.matcher(str); while (matcher.find()) { System.out.println(matcher.group()); } } }
Resultados de salida
<b>is</b> <b>example</b> <b>script</b> <b>every</b> <b>word</b> <b>bold</b> <i>also</i> <i>italic</i>
Otra variante de este método acepta una variable entera que representa el grupo capturado desde1Índice de inicio desde la izquierda.
import java.util.regex.Matcher; import java.util.regex.Pattern; public class GroupTest { public static void main(String[] args) { String regex = "(.*);+);*); String input = "This is a sample Text, 1234, con números entre paréntesis."; //Creación de un objeto de patrón Pattern pattern = Pattern.compile(regex); //Coincidencia de la cadena con el patrón compilado Matcher matcher = pattern.matcher(input); if(matcher.find()) { System.out.println("coincidencia: "+matcher.group(0)); System.out.println("Primer grupo de coincidencia: "+matcher.group(1)); System.out.println("Segundo grupo de coincidencia: "+matcher.group(2)); System.out.println("Tercer grupo de coincidencia: "+matcher.group(3)); } } }
Resultados de salida
coincidencia: Esto es un texto de muestra , 1234, con números entre paréntesis. Primer grupo de coincidencia: Esto es un texto de muestra , 123 Segundo grupo de coincidencia: 4 Tercer grupo de coincidencia: , con números entre paréntesis.