Php 使用preg match all获取域年龄

Php 使用preg match all获取域年龄,php,regex,Php,Regex,我想计算一个网站的域名年龄 内容来自 下面是我从戈达迪那里得到的一些结果 Created on: 26-Dec-03 Record created on 2009-01-15. Creation date: 27 Oct 2006 19:43:06 Created on..............: 1997-03-28 我想得到年份,然后减去它到当前年份,得到域名年龄。 但是至少有4个创建日期格式,我如何使用preg_match_all检查它们以获得年份域名年龄 请帮帮我,伙计们, 提前感谢

我想计算一个网站的域名年龄 内容来自

下面是我从戈达迪那里得到的一些结果

Created on: 26-Dec-03
Record created on 2009-01-15.
Creation date: 27 Oct 2006 19:43:06
Created on..............: 1997-03-28
我想得到年份,然后减去它到当前年份,得到域名年龄。 但是至少有4个创建日期格式,我如何使用preg_match_all检查它们以获得年份域名年龄

请帮帮我,伙计们,
提前感谢。

我不会尝试创建一个包含
create
的行(不区分大小写),而是搜索各种日期格式

找到一行上有“create”,然后捕获从第一个数字到新行字符(或)的所有内容

可能必须根据实际文本更改
(?:\n |\)

$str =  <<<END
Created on: 26-Dec-03
Record created on 2009-01-15.
Creation date: 27 Oct 2006 19:43:06
Created on..............: 1997-03-28

END;

preg_match_all( '~creat.*?(\d.*?)(?:\n|\.)~i', $str, $matches );

print_r($matches);

$str=现在我只需要得到4位数字,然后将其减去当前年份即可得到域名年龄。唯一的问题是如果年份是2位数97,则使用strotime对其进行计算,并对结果进行计算