Expressions régulières en Java | Expliqué

Expressions régulières en Java | Expliqué
Une expression régulière (également connue sous le nom de regex) fournit une API qui définit les modèles pour rechercher ou manipuler les cordes. En Java, un package prédéfini Java.user.expirat peut être utilisé pour travailler avec les expressions régulières. Il se compose de trois classes: un Modèle classe pour définir un modèle, un Correspondant classe pour rechercher un modèle et un PatternSyntaxException classe pour indiquer une erreur de syntaxe dans un expirat modèle.

Cet article présente une compréhension approfondie des concepts suivants:

  • Création de motifs en utilisant la méthode de compilation
  • Correspondance de modèle à l'aide de la méthode du correspondance
  • Quels sont les drapeaux dans les expressions régulières
  • Quels sont les modèles d'expression réguliers
  • Que sont les métacharacteurs dans les expressions régulières
  • Que sont les quantificateurs dans les expressions régulières
  • Mise en œuvre pratique des expressions régulières en Java

Alors, commençons!

Création de motifs en utilisant la méthode compile ()

Afin de créer un modèle, nous devons d'abord invoquer le compiler() Méthode de la Modèle classe et, par conséquent, il renverra un objet de modèle. Le compiler() La méthode peut prendre deux paramètres: le premier pour le modèle à rechercher et le second est facultatif et peut être utilisé pour spécifier un drapeau.

Quels sont les modèles dans les expressions régulières

Dans le premier paramètre, le compiler() La méthode spécifie un modèle à rechercher. Certains modèles de recherche couramment utilisés sont répertoriés ci-dessous:

  1. [-] Ici "-" représente différents caractères, et tout le modèle I.e. [-] décrit que trouver un caractère entre les options fournies entre les crochets.
  2. [^ -] décrit trouver un caractère qui ne fait pas partie du modèle fourni.
  3. [0-9], décrit la recherche d'un nombre entre 0 et 9.

Quels sont les drapeaux dans les expressions régulières

Les drapeaux sont des paramètres facultatifs aux expressions régulières et peuvent être utilisés pour spécifier leur comportement de recherche (régulièrement des expressions). Par exemple, Case_inssenstive peut être utilisé pour effectuer la recherche quel que soit le cas de la lettre, je.e. majuscules ou minuscules.

Correspondance de modèle à l'aide de la méthode Matcher ()

Le motif renvoyé par le compiler() la méthode sera interprétée par le Matcher () Méthode pour effectuer l'opération de correspondance sur la chaîne.

Que sont les métacharacteurs dans les expressions régulières

Java fournit plusieurs Métacharacteurs qui ont une signification particulière et sont utiles pour définir les critères de recherche:

Métacharacteurs Description
\d Utilisé pour trouver un chiffre
\ b Utilisé pour trouver un match au début ou à la fin du mot
$ Utilisé pour trouver le match à la fin de la chaîne
^ Utilisé pour trouver le match au début de la chaîne
\ s Rechercher les espaces blancs
| Recherchez une correspondance à partir de plusieurs options qui sont séparées avec '|' signe
. Utilisé pour correspondre à une seule instance d'un personnage

Que sont les quantificateurs dans les expressions régulières

Le quantificateur spécifie le nombre d'occurrences à faire correspondre, certains quantificateurs couramment utilisés sont répertoriés ci-dessous:

Quantificateurs Description
UN+ A se produit au moins une fois
UN* A se produit zéro ou plus de temps
UN? A se produit zéro ou une fois
Un A se produit n nombre de fois
Un, A se produit n fois ou plus n fois
A x, y A se produit entre la gamme fournie i.e. A se produit au moins x fois mais moins que y fois

Mise en œuvre pratique des expressions régulières en Java

Mise en œuvre des concepts susmentionnés dans un scénario pratique pour une compréhension profonde.

Exemple

Dans l'extrait de code ci-dessous, nous avons recherché le mot «Linuxhint» dans une phrase en utilisant une expression régulière:

publicClassRegexPexample
publicStaticVoidMain (String [] args)
Motif pat = motif.compiler ("Linuxhint", motif.Case_insenSitive);
Match Match = Pat.Matcher ("Bienvenue à Linuxhint.com ");
booléen trouvé = match.trouver();
si trouvé)
Système.dehors.println ("Match trouvé avec succès");
autre
Système.dehors.println ("Match Not Found");


Initialement, nous avons créé l'objet du Modèle classe, alors nous spécifions un mot que nous voulons rechercher et un drapeau "case_insensitive" dans le compiler() méthode. Ensuite, nous utilisons le Matcher () Méthode pour effectuer l'opération de correspondance sur la chaîne.

La sortie authentifie que les correspondances sont trouvées avec succès, quelle que soit la sensibilité des cas.

Conclusion

Les expressions régulières ne sont rien d'autre qu'une séquence de caractères qui définit les modèles de recherche. En Java, des expressions régulières sont utilisées pour rechercher, éditer et manipuler une chaîne. Pour créer un modèle, nous devons d'abord invoquer le compiler() Méthode de la Modèle classe et par conséquent, il renverra un modèle qui sera interprété par le Matcher () Méthode pour effectuer l'opération de correspondance sur la chaîne. De plus, Java fournit plusieurs Métacharacteurs qui sont utiles pour définir les critères de recherche et Quantificateurs Pour spécifier le nombre d'occurrences à faire correspondre.