Récupérer du texte entre des parenthèses en Java
Les expressions régulières ou Regex est une API pour définir des patterns qui peuvent être utilisés pour rechercher, manipuler et éditer une chaîne en Java. Regex est largement utilisé pour définir des contraintes. Les expressions régulières sont fournies sous le package java.util.
Dans ce tutoriel nous allons découvrir comment récupérer du texte entre des parenthèses ou des crochets en utilisant les expressions régulières en Java.
Exemple 1: Récupérer du texte entre des parenthèses en Java – Méthode 1
import java.util.regex.*; public class Main { public static void main(String[]args) { String str = "Welcome to (WayToLearnX)"; Matcher m = Pattern.compile("\\((.*?)\\)").matcher(str); while(m.find()) { System.out.println(m.group(1)); } } }
Sortie:
WayToLearnX
Explication:
.*? Correspond à n’importe quel caractère entre des parenthèses. ? aprés * indique au moteur regex de faire la correspondance la plus courte.
Pour récupérer du texte entre des crochets, il suffit de remplacer les parenthèses par des crochets comme suit : compile("\\[(.*?)\\]")
Exemple 2: Récupérer du texte entre des parenthèses en Java – Méthode 2
import java.util.regex.*; public class Main { public static void main(String[]args) { String str = "Welcome to (WayToLearnX)"; String res = str.substring(str.indexOf("(")+1,str.indexOf(")")); System.out.println(res); } }
Sortie:
WayToLearnX