Maison > Java > javaDidacticiel > le corps du texte

Accepter la chaîne de date (format MM-jj-aaaa) à l'aide de l'expression régulière Java ?

WBOY
Libérer: 2023-09-07 18:05:02
avant
1412 Les gens l'ont consulté

Accepter la chaîne de date (format MM-jj-aaaa) à laide de lexpression régulière Java ?

Ce qui suit est une expression régulière qui correspond aux dates au format jj-MM-aaaa.

^(1[0-2]|0[1-9])/(3[01]|[12][0-9]|0[1-9])/[0-9]{4}$
Copier après la connexion

Faites correspondre les dates dans cette chaîne de format.

  • Compilez la classe d'expression Pattern de la méthode compile() ci-dessus.

  • Contournez la chaîne d'entrée requise en tant que paramètre de la méthode matcher() de la classe Pattern pour obtenir l'objet Matcher.

  • < li>

    La méthode matches() de la classe Matcher renvoie vrai si une correspondance se produit, sinon elle renvoie faux. Par conséquent, cette méthode est appelée pour valider les données.

Exemple 1

import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class MatchingDate {
   public static void main(String[] args) {
      String date = "01/12/2019";
      String regex = "^(1[0-2]|0[1-9])/(3[01]|[12][0-9]|0[1-9])/[0-9]{4}$";
      //Creating a pattern object
      Pattern pattern = Pattern.compile(regex);
      //Matching the compiled pattern in the String
      Matcher matcher = pattern.matcher(date);
      boolean bool = matcher.matches();
      if(bool) {
         System.out.println("Date is valid");
      } else {
         System.out.println("Date is not valid");
      }
   }
}
Copier après la connexion

Output

Date is valid
Copier après la connexion

La méthode matches() de la classe String accepte une expression régulière et fait correspondre la chaîne actuelle avec elle, retournant si elle correspond true, sinon false est renvoyé. Alors, pour vérifier qu'une date donnée (au format chaîne) est conforme au format requis -

  • Récupérez la chaîne de date.
  • Appelez la méthode matches() en lui passant l'expression régulière ci-dessus en paramètre.

Exemple 2

import java.util.Scanner;
public class Just {
   public static void main(String[] args) {
      Scanner sc = new Scanner(System.in);
      System.out.println("Enter your name: ");
      String name = sc.nextLine();
      System.out.println("Enter your Date of birth: ");
      String dob = sc.nextLine();
      //Regular expression to accept date in MM-DD-YYY format
      String regex = "^(1[0-2]|0[1-9])/(3[01]|[12][0-9]|0[1-9])/[0-9]{4}$";
      boolean result = dob.matches(regex);
      if(result) {
         System.out.println("Given date of birth is valid");
      } else {
         System.out.println("Given date of birth is not valid");
      }
   }
}
Copier après la connexion

Sortie 1

Enter your name:
Janaki
Enter your Date of birth:
26/09/1989
Given date of birth is not valid
Copier après la connexion

Sortie 2

Enter your name:
Janaki
Enter your Date of birth:
09/26/1989
Given date of birth is valid
Copier après la connexion

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!

Étiquettes associées:
source:tutorialspoint.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal