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}$
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.
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.
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"); } } }
Date is valid
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 -
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"); } } }
Enter your name: Janaki Enter your Date of birth: 26/09/1989 Given date of birth is not valid
Enter your name: Janaki Enter your Date of birth: 09/26/1989 Given date of birth is valid
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!