我想从格式的字符串中获取日期:dd.mm.yyyy或dd.mm.yy
我的代码是:
$string = 'My test bla bla bla (21.11.13)'
if(preg_match("/([0-9]{2}).([0-9]{2}).([0-9]{2|4})/", $string))
{
echo 'ok';
}
但不行。
答案 0 :(得分:0)
带有“/”分隔符的正则表达式:
/\([0-9]{2}\.[0-9]{2}\.([0-9]{2})|([0-9]{4})\)/
我已经取出日期和月份的括号,假设只需要整个日期。另外,如果您不需要(21.11.13)中的周围括号,请在开头和结尾删除反斜杠转义括号。
此外,如果您只想检查字符串是否存在,请使用:
$match = preg_match("/\([0-9]{2}\.[0-9]{2}\.([0-9]{2})|([0-9]{4})\)/", $string);
if($match === 1)
{
echo 'ok';
}
elseif($match === 0)
{
echo 'not found';
}
else
{
echo 'error in regular expression';
}