다음은 dd-MM-yyyy 형식의 날짜를 일치시키는 정규식입니다.
^(1[0-2]|0[1-9])/(3[01]|[12][0-9]|0[1-9])/[0-9]{4}$
이 형식 문자열의 날짜를 일치시킵니다.
위 compile() 메서드의 표현식 Pattern 클래스를 컴파일합니다.
Matcher 개체를 가져오기 위해 Pattern 클래스의 matcher() 메서드에 대한 인수로 필수 입력 문자열을 우회합니다.
Matcher 클래스의 match() 메서드는 일치하는 경우 true를 반환하고, 그렇지 않으면 false를 반환합니다. 따라서 이 메서드는 데이터의 유효성을 검사하기 위해 호출됩니다.
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
String 클래스의 match() 메서드는 정규식을 허용하고 현재 문자열을 그것과 일치시키며, 일치하면 반환합니다. true, 그렇지 않으면 false가 반환됩니다. 따라서 주어진 날짜(문자열 형식)가 필수 형식을 준수하는지 확인하려면 -
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
위 내용은 Java 정규식을 사용하여 날짜 문자열(MM-dd-yyyy 형식)을 허용하시겠습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!