Maison  >  Article  >  Java  >  Classes de modèles en Java

Classes de modèles en Java

PHPz
PHPzavant
2023-08-30 09:01:02621parcourir

Classes de modèles en Java

La classe Pattern représente une version compilée d'un modèle d'expression régulière. La classe Pattern se trouve dans le package java.util.regex. Cette classe dispose de diverses méthodes pour diverses opérations telles que la correspondance, le fractionnement, la recherche, etc. Afin de créer un objet schéma, utilisez la méthode de compilation.

Grammaire

public static Pattern compile(String regex)

L'expression régulière représente ici une expression régulière, qui est une chaîne. Pour le compiler, nous utilisons cette méthode. De plus, cet objet compilé peut être utilisé pour faire correspondre des modèles à l'aide de la méthode Matcher.

Algorithme

Pour compiler et faire correspondre des modèles, suivez ces étapes -

  • Étape 1 - Initialisez le modèle d'expression régulière avec une chaîne.

  • Étape 2 - Maintenant, compilez le schéma à l'aide de la méthode de compilation.

  • Étape 3 - Définissez la chaîne d'entrée pour qu'elle corresponde au modèle.

  • Étape 4 - Créez un objet Matcher et appliquez le motif à la chaîne d'entrée.

  • Étape 5 − Utilisez la méthode Matcher pour effectuer diverses opérations

Grammaire

public class Regex {
   public static void main(String[] args) {
      String pattern = "String1";
      Pattern compiledPattern = Pattern.compile(pattern);
      String input = "Strin2";
      Matcher matcher = compiledPattern.matcher(input);
      if (matcher.find()) {
         System.out.println("Match found: " + matcher.group(0));
         System.out.println("Captured group: " + matcher.group(1));
      } else {
         System.out.println("No match found.");
      }
   }
}

Méthode 1 : Utiliser la méthode matches()

Cette méthode implique d'utiliser la méthode matches().

Exemple

import java.util.regex.Pattern;

public class MatchThePattern {
   public static void main(String[] args) {
      String pattern = "Hello (\w+)";
      String input = "Hello World"; // Add the input string to be matched

      boolean letsMatch = Pattern.matches(pattern, input);
      if (letsMatch) {
         System.out.println("Pattern matched.");
      } else {
         System.out.println("Pattern not matched.");
      }
   }
}

Sortie

Pattern matched.

Instructions

En passant les deux entrées de chaîne comme arguments à la méthode matches, nous pouvons réussir à faire correspondre les deux modèles de chaîne dans le code ci-dessus.

Méthode 2 : utilisez la méthode find()

La méthode

find() renvoie un type booléen et trouve les expressions qui correspondent au modèle. Vous trouverez ci-dessous l'exemple de code -

Exemple

Dans cet exemple, nous utiliserons la méthode find() pour démontrer la deuxième méthode.

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

public class LetsFindPattern {
   public static void main(String[] args) {
      String pattern = "\b\d+\b";
      String input = "The price is 100 dollars for 3 items.";
      Pattern compiledPattern = Pattern.compile(pattern);
      Matcher matcher = compiledPattern.matcher(input);
      while (matcher.find()) {
         System.out.println("Match found: " + matcher.group());
      }
   }
}

Sortie

Match found: 100
Match found: 3

Comparaison entre la méthode 1 et la méthode 2

Standard

Méthode 1

Méthode 2

Type

Chaîne

Chaîne

Méthode

Correspondance booléenne (expression régulière de chaîne)

Recherche booléenne()

Logique de la méthode

Modèle de retour si le match est réussi

Retourner le motif correspondant

Conclusion

Les expressions régulières sont utilisées pour faire correspondre des modèles. Les méthodes ci-dessus sont des exemples d'actions que vous devez entreprendre lors de la mise en correspondance de modèles. Nous démontrons également ces méthodes avec deux exemples concrets, démontrant leur puissance et leur polyvalence. En comprenant ces méthodes et leurs cas d'utilisation, vous pouvez utiliser des expressions régulières pour trouver efficacement des modèles correspondants

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer