如何区分日期格式为 dd/mm/yy 或 dd/mm/yyyy?
How to differentiate date formats as dd/mm/yy or dd/mm/yyyy?
我正在尝试访问给定日期值的格式。我需要检查格式是 dd/mm/yy
还是 dd/mm/yyyy
。我在 preg_match()
中使用了以下模式,但它们不起作用。
'^\d{1,2}\/\d{1,2}\/\d{4}^' // dd/mm/yyyy
'^\d{1,2}\/\d{1,2}\/\d{2}^' // dd/mm/yy
谁能帮我找到正确的模式?
问题:
1. This $
should be in end instead of ^
. $
is for end of string.
2. Don't forget delimiters /
.
正则表达式:
/^\d{1,2}\/\d{1,2}\/\d{4}$/
for strings like 10/10/1111
/^\d{1,2}\/\d{1,2}\/\d{2}$/
for strings like 10/10/11
您的正则表达式语法有误。在正则表达式中,模式的开头用 ^ 表示,而结尾用 $.
表示
您可以使用以下方法验证给定的日期格式。
$date_to_check = "22/06/2017";
$true = preg_match("/([0-9]{2})\/([0-9]{2})\/([0-9]{4})/", $date_to_check);
var_dump($true);
但是,您不应仅根据正则表达式验证日期。您需要将年、月、日传递给 php 的 checkdate() 函数才能真正验证它。
我正在尝试访问给定日期值的格式。我需要检查格式是 dd/mm/yy
还是 dd/mm/yyyy
。我在 preg_match()
中使用了以下模式,但它们不起作用。
'^\d{1,2}\/\d{1,2}\/\d{4}^' // dd/mm/yyyy
'^\d{1,2}\/\d{1,2}\/\d{2}^' // dd/mm/yy
谁能帮我找到正确的模式?
问题:
1. This
$
should be in end instead of^
.$
is for end of string.2. Don't forget delimiters
/
.
正则表达式:
/^\d{1,2}\/\d{1,2}\/\d{4}$/
for strings like10/10/1111
/^\d{1,2}\/\d{1,2}\/\d{2}$/
for strings like10/10/11
您的正则表达式语法有误。在正则表达式中,模式的开头用 ^ 表示,而结尾用 $.
表示您可以使用以下方法验证给定的日期格式。
$date_to_check = "22/06/2017";
$true = preg_match("/([0-9]{2})\/([0-9]{2})\/([0-9]{4})/", $date_to_check);
var_dump($true);
但是,您不应仅根据正则表达式验证日期。您需要将年、月、日传递给 php 的 checkdate() 函数才能真正验证它。