English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Méthode lookingAt () avec exemple dans Matching en Java

La classe java.util.regex.Matcher représente le moteur d'exécution de diverses opérations de correspondance. Cette classe n'a pas de constructeur, et peut être créée en utilisant la méthode matchs() de la classe java.util.regex.Pattern/Obtenir un objet de cette classe.

Matcherde la classelookingAt()La méthode commence par la zone de début à comparer le texte d'entrée donné avec le modèle. Si une correspondance est trouvée, cette méthode retourne true, sinon false. Contrairement à la méthode matches(), cette méthode n'a pas besoin que toute la zone corresponde pour retourner true.

Exemple1

import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Test {
   public static void main(String[] args) {
      String regex = "(.*) (\\d+) (.*)";
      String input = "Ceci est un texte d'exemple," 1234, avec des nombres entre eux. "
         + "\n Ceci est la deuxième ligne du texte "
         + "\n Ceci est la troisième ligne du texte";
      //Création d'un objet modèle
      Pattern pattern = Pattern.compile(regex);
      //Création d'un objet Matcher
      Matcher matcher = pattern.matcher(input);
      //Vérification de la correspondance
      if(matcher.lookingAt()) {
         System.out.println("Correspondance trouvée");
      } else {
         System.out.println("Correspondance non trouvée");
      }
   }
}

Résultat de la sortie

Correspondance trouvée

Exemple2

import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class LookingAtExample {
   public static void main(String args[]) {
      Scanner sc = new Scanner(System.in);
      System.out.println("Enter String1: ");
      String input1 = sc.nextLine();
      System.out.println("Enter String2: ");
      String input2 = sc.nextLine();
      System.out.println("Enter String3: ");
      String input3 = sc.nextLine();
      String input = input1+"\n"+input2+"\n"+input3;
      System.out.println(input);
      //Expression régulière pour correspondre à un mot contenant des chiffres
      String regex = ".*\\d+.*";
      //Compilation de l'expression régulière
      Pattern pattern = Pattern.compile(regex);
      //Récupération de l'objet matcher
      Matcher matcher = pattern.matcher(input);
      //vérifiant si une correspondance s'est produite
      boolean bool = matcher.lookingAt();
      if(bool) {
         System.out.println("Donnée d'entrée contient un chiffre");
      } else {
         System.out.println("Donnée d'entrée ne contient aucun chiffre");
      }
   }
}

Résultat de la sortie

Entrer une chaîne1:
texte d'échantillon2
Entrer une chaîne2:
données
Entrer une chaîne3:
échantillon
texte d'échantillon2
données
échantillon
Donnée d'entrée contient un chiffre
Vous pourriez aussi aimer