日常开发中,主要做的是数据的增删改查,在查询时数据的校验是非常重要的。JAVA如何做日期格式检验呢?

java正则匹配数字检验日期格式

创建一个简单的正则来对字符串进行格式约束:

public class FormattedDateMatcher implements DateMatcher {
    private static final Pattern DATE_PATTERN = 
        Pattern.compile("^d{4}-d{2}-d{2}$");

    @Override
    public boolean matches(String date) {
        return DATE_PATTERN.matcher(date).matches();
    }
}

这里我们指定了一个有效日期必须由三组中划线分割的整数组成,第一组由4个整数,其余两组各有两个整数。当然这样的检验是没有达到完美的,例如上面的0000-00-00,2023-42-89 也是能通过的。

相对好一点的正则如下:$pattern='/^d{4}[-](0?[1-9]|1[012])[-](0?[1-9]|[12][0-9]|3[01])$/';  更加严谨的可以考虑在年上面也加上检验。

感兴趣的朋友可以了解java的 SimpleDateFormat 来检验日期。