Java基于正则实现的日期校验功能示例
程序员文章站
2024-03-06 09:35:55
本文实例讲述了java基于正则实现的日期校验功能。分享给大家供大家参考,具体如下:
private void checkdate() throws ioexcep...
本文实例讲述了java基于正则实现的日期校验功能。分享给大家供大家参考,具体如下:
private void checkdate() throws ioexception { // 4种分隔符 string sep = "[-\\./_]"; // 年份 string strpattern = "^(19[4-9]\\d|20\\d{2})" + sep; strpattern += "("; // 月(1,3,5,7,8,10,12) strpattern += "((0?[13578]|1[02])" + sep + "(0?[1-9]|[12][0-9]|3[01]))|"; // 月(4,6,9,11) strpattern += "((0?[469]|11)" + sep + "(0?[1-9]|[12][0-9]|30))|"; // 月(2) strpattern += "((2)" + sep + "(0?[1-9]|[12]\\d))"; strpattern += ")$"; pattern p = pattern.compile(strpattern); matcher m = p.matcher(""); int count = 0; string filename = excelgene.class.getresource("date.txt").getfile(); bufferedreader br = new bufferedreader(new filereader(filename)); string line = null; while ((line = br.readline()) != null) { count++; if (line.trim().length() > 0) { m.reset(line); if (!m.find()) { system.out.println(count + " " + line); } else { string year = m.group(1); string month = m.group(4); month = month == null ? m.group(7) : month; month = month == null ? m.group(10) : month; string date = m.group(5); date = date == null ? m.group(8) : date; date = date == null ? m.group(11) : date; system.out.println(year + "年" + month + "月" + date + "日"); } } } }
ps:这里再为大家提供2款非常方便的正则表达式工具供大家参考使用:
javascript正则表达式在线测试工具:
正则表达式在线生成工具:
希望本文所述对大家java程序设计有所帮助。
上一篇: Android开发仿映客送礼物效果