檢查日期和時間的 Java 正則表示式是什麼?


要讓正則表示式與給定的字串相匹配,你需要:.

  • 編譯 Pattern 類 compile() 方法中的正則表示式。
  • 透過將所需輸入字串作為 Pattern 類 matcher() 方法的引數來獲取 Matcher 物件。
  • Matcher 類的 matches() 方法在匹配發生時返回 true,否則返回 false。因此,呼叫此方法以驗證資料。

示例

下面是一個僅匹配日期的 Java 正則表示式示例。

即時演示

import java.util.ArrayList;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Sample {
   public static void main(String args[]){  
    //Creating the list to store dates
      List dates = new ArrayList();
      dates.add("25-12-1990");
      dates.add("25/12/1990");
      dates.add("2010-06-24 06:30");
      dates.add("05-02-1990");
      dates.add("1920-11-03 12:40");      
      //Regular expression to match dates
      String regex = "[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])";
      //Compiling the regular expression
      Pattern pattern = Pattern.compile(regex);      
      //Matching each date
      for(Object date : dates) {        
          Matcher matcher = pattern.matcher((CharSequence) date);
          System.out.println(date +": "+ matcher.matches());
       }      
   }
}

輸出

25-12-1990: false
25/12/1990: false
2010-06-24: true
05-02-1990: false
1920-11-03: true

示例

以下示例匹配日期和時間 -

即時演示

import java.util.ArrayList;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Sample {
   public static void main(String args[]){  
    //Creating the list to store dates
      List dates = new ArrayList();
      dates.add("25-12-1990");
      dates.add("25/12/1990");
      dates.add("2010-06-24 12:30:40");
      dates.add("05-02-1990 44:205:40");
      dates.add("1920-11-03 06:25:40");      
      //Regular expression to match dates
      String regex = "[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1]) (2[0-3]|[01][0-9]):[0-5][0-9]:[0-5][0-9]";
      //Compiling the regular expression
      Pattern pattern = Pattern.compile(regex);      
      //Matching each date
      for(Object date : dates) {        
          Matcher matcher = pattern.matcher((CharSequence) date);
          System.out.println(date +": "+ matcher.matches());
       }      
   }
}

輸出

25-12-1990: false
25/12/1990: false
2010-06-24 12:30:40: true
05-02-1990 44:205:40: false
1920-11-03 06:25:40: true

更新於: 06-Feb-2021

2K+ 瀏覽量

開始您的職業生涯

完成課程獲得認證

立即開始
廣告
© . All rights reserved.