日期格式dd\mm\yyyy的正则表达式是什么?

San*_*ndy 4 java regex

日期格式dd\mm\yyyy的正则表达式是什么?我无法找到这种格式的正则表达式?

Jon*_*uis 8

在我看来,最好使用正则表达式验证格式,但使用代码验证有效性(在您的情况下为Java).尝试检查诸如每月不同的日子和正常表达的闰年之类的事情是荒谬的.

我建议使用一个正则表达式像解析日期([0-9]{2})\\([0-9]{2})\\([0-9]{4}),然后提取每个片(dd,mm,和yyyy,分别地),并尝试创建一个java.util.Date对象了出来.

请注意以下事项:

  • 日期通常用正斜杠(/)而不是反斜杠(\)编写,
  • 在Java字符串中,要在正则表达式中编写反斜杠字符,您必须实际编写\\\\两个反斜杠(\\)字符.在java字符串中写一个反斜杠我们需要转义字符(这也是一个\).

  • 使用此正则表达式,您最终会接受无效的日期,例如“ 99 \ 99 \ 9999” (2认同)

Vin*_*nga 7

正则表达式dd/mm/yyyy

    String regex = "^([0-2][0-9]||3[0-1])/(0[0-9]||1[0-2])/([0-9][0-9])?[0-9][0-9]$";
Run Code Online (Sandbox Code Playgroud)