我需要一些正则表达式的帮助.我正在尝试验证字符串是否看起来像'yyyy-mm-dd',这是我的代码到目前为止:
case "date":
if (preg_match("/^[0-9\-]/i",$value)){
$date = explode("-",$value);
$year = $date[0];
$month = $date[1];
$day = $date[2];
if (!checkdate($month,$day,$year))
{
$this->errors[] = "Ogiltigt datum.";
}
} else {
$this->errors[] = "Ogiltigt datum angivet.";
}
break;
Run Code Online (Sandbox Code Playgroud)
我对正则表达式很新,谢谢.
你可以用这个:
if ( preg_match('/^[0-9]{4}-[0-9]{2}-[0-9]{2}\z/', $value) ) { ...
Run Code Online (Sandbox Code Playgroud)
但是这种模式可以验证类似的东西 0000-40-99
图案细节:
/ # pattern delimiter
^ # anchor: start of the string
[0-9]{4} # four digits
- # literal: -
[0-9]{2}
-
[0-9]{2}
\z # anchor: end of the string
/ # pattern delimiter
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5772 次 |
| 最近记录: |