- Java 编程示例
- 示例 - 主页
- 示例 - 环境
- 示例 - 字符串
- 示例 - 数组
- 示例 - 日期和时间
- 示例 - 方法
- 示例 - 文件
- 示例 - 目录
- 示例 - 异常
- 示例 - 数据结构
- 示例 - 集合
- 示例 - 网络
- 示例 - 线程
- 示例 - 小应用程序
- 示例 - 简单 GUI
- 示例 - JDBC
- 示例 - 正则表达式
- 示例 - Apache PDF Box
- 示例 - Apache POI PPT
- 示例 - Apache POI Excel
- 示例 - Apache POI Word
- 示例 - OpenCV
- 示例 - Apache Tika
- 示例 - iText
- Java 教程
- Java - 教程
- 有用的 Java 资源
- Java - 快速指南
- Java - 有用资源
如何检查日期格式是否正确(使用 Java)
问题描述
如何检查日期格式是否正确?
解决方案
以下示例演示了如何使用 String 类的 matches 方法,检查日期格式是否正确。
public class Main {
public static void main(String[] argv) {
boolean isDate = false;
String date1 = "8-05-1988";
String date2 = "08/04/1987";
String datePattern = "\\d{1,2}-\\d{1,2}-\\d{4}";
isDate = date1.matches(datePattern);
System.out.println("Date :"+ date1+": matches with the this date Pattern:"+datePattern+"Ans:"+isDate);
isDate = date2.matches(datePattern);
System.out.println("Date :"+ date2+": matches with the this date Pattern:"+datePattern+"Ans:"+isDate);
}
}
结果
上面的代码示例将产生以下结果。
Date :8-05-1988: matches with the this date Pattern: \d{1,2}-\d{1,2}-\d{4}Ans:true
Date :08/04/1987: matches with the this date Pattern: \d{1,2}-\d{1,2}-\d{4}Ans:false
以下是检查日期格式是否正确的示例。
import java.util.ArrayList;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Main {
public static void main(String args[]) {
List dates = new ArrayList();
dates.add("25/12/1990");
dates.add("25/12/1990");
dates.add("12/12/90");
dates.add("05/02/1990");
String regex = "^(1[0-2]|0[1-9])/(3[01]|[12][0-9]|0[1-9])/[0-9]{4}$";
Pattern pattern = Pattern.compile(regex);
for(Object date : dates) {
Matcher matcher = pattern.matcher((CharSequence) date);
System.out.println(date +" : "+ matcher.matches());
}
}
}
结果
上面的代码示例将产生以下结果。
25/12/1990 : false 25/12/1990 : false 12/12/90 : false 05/02/1990 : true
java_regular_exp.htm
广告