在perl中将日期转换为纪元的最佳方法[关闭]
Posted
技术标签:
【中文标题】在perl中将日期转换为纪元的最佳方法[关闭]【英文标题】:Best way to convert date to epoch in perl [closed] 【发布时间】:2020-07-08 21:23:02 【问题描述】:在多平台上转换--> 2021 年 3 月 11 日 10:29:47 GMT
【问题讨论】:
正则表达式只能帮助您匹配上下文中的全部或部分日期字符串,但您仍然必须实现将匹配的内容转换为 UNIX 时间戳的逻辑。相当多的语言都有某种形式的日期字符串到日期对象/时间戳功能;您必须针对每种情况专门使用它。 【参考方案1】:使用 Time::Piece 中的 strptime()
(“字符串解析时间”)方法,自 2007 年 5.10.0 起,该方法已成为标准 Perl 发行版的一部分。
#!/usr/bin/perl
use strict;
use warnings;
use feature 'say';
use Time::Piece;
my $str = 'Mar 11 10:29:47 2021 GMT';
my $fmt = '%b %d %H:%M:%S %Y %Z';
my $date = Time::Piece->strptime($str, $fmt);
say $date->epoch; # prints 1615458587
strptime
是一个标准的 Unix 工具,有多种形式。您可以从其manual page 获取有关它使用的格式字符串的更多信息。
【讨论】:
以上是关于在perl中将日期转换为纪元的最佳方法[关闭]的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Perl 中将 dd/mm/yyyy 转换为纪元时间?