【发布时间】:2014-12-20 22:17:22
【问题描述】:
我正在从数据库中以字符串的形式获取数据,例如 02-feb-1990 我想从字符串中删除所有字符,并且只有年份表示 1990强>.
如何在 PHP 中使用正则表达式或任何其他方法来实现这一点
【问题讨论】:
-
可以使用php的
trim函数。 -
你为什么不先谷歌一下?要使用的字符串函数,如 substr... 或正则表达式。
我正在从数据库中以字符串的形式获取数据,例如 02-feb-1990 我想从字符串中删除所有字符,并且只有年份表示 1990强>.
如何在 PHP 中使用正则表达式或任何其他方法来实现这一点
【问题讨论】:
trim函数。
这应该适合你:
<?php
$input = "02-feb-1990";
echo $year = substr($input, -4);
?>
输出:
1990
如果你想使用正则表达式:
<?php
$input = "02-feb-1990";
preg_match_all("/\d{4}$/", $input, $matches);
print_r($matches);
?>
输出:
Array ( [0] => Array ( [0] => 1990 ) )
【讨论】:
要使用正则表达式从 dd-mmm-yyyy 检索 4 位数年份,您可以使用以下命令:
$date = "02-feb-1990"
preg_match('/\d{4}/', $date, $year);
echo $year[0];
上面将匹配您遇到的前 4 位数字,在这种情况下,将始终是 4 位年份。
【讨论】: