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

如何使用Java正则表达式(RegEx)匹配数字

Vous pouvez utiliser les caractères méta " \\d ou utilisez l'expression suivante pour correspondre aux chiffres dans une chaîne donnée : 

[0-9]

Exemple1

import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
   public static void main(String args[]) {
      //Lire une chaîne de caractères depuis l'utilisateur
      System.out.println("Saisir une chaîne");
      Scanner sc = new Scanner(System.in);
      String input = sc.nextLine();
      String regex = "\\d";
      //Compilation de l'expression régulière
      Pattern pattern = Pattern.compile(regex);
      //Objet rétenteur de recherche
      Matcher matcher = pattern.matcher(input);
      int count = 0;
      while(matcher.find()) {
         count++;
      }
      System.out.println("Nombre de chiffres : ");+count);
   }
}

Résultat de la sortie

Saisir une chaîne
texte d'exemple 1234 6657
Nombre de chiffres : 8

Exemple2

import java.util.Scanner;
public class RegexExample {
   public static void main( String args[] ) {
      //Accepter10Expression régulière pour le nombre de chiffres
      String regex = "\\d{10";
      System.out.println("Saisir une valeur d'entrée: ");
      Scanner sc = new Scanner(System.in);
      String input = sc.nextLine();
      boolean result = input.matches(regex);
      if(result) {
         System.out.println("10 Nombre de chiffres");
      } else {
         System.out.println("Entrée incorrecte");
      }
   }
}

Sortie1

Saisir une valeur d'entrée:
9848022558
10 Nombre de chiffres

Sortie2

Saisir une valeur d'entrée:
5337
Entrée incorrecte