gpt4 book ai didi

perl - 在 perl 中,我如何从通过文本文件并在 dd-Month-YYYY(01-jan-1990) 中输出的日期中减去 10 天

转载 作者:行者123 更新时间:2023-12-04 22:14:05 26 4
gpt4 key购买 nike

在 perl 中有一种方法可以从文本文件中传递的日期中减去 10 天,并且输出应该是 01-jan-1999 格式。

我正在使用以下代码读取文件并获取日期,之后我对减去日期感到震惊。

日期.txt

2013 年 1 月 25 日

#!/usr/bin/perl
use warnings;
use strict;
use DateTime;

my $inp= "date.txt";
my $todate;
my $fromdate;

open(date,"$inp");
while(<date>)
{
$todate = $_ ;
print "$todate \n";
}

$fromdate = $todate - 10 days ;

最佳答案

这是使用 DateTime 的答案。

#!/usr/bin/perl

use strict;
use warnings;
use 5.010;

use DateTime::Format::Strptime;
use DateTime;

my $parser = DateTime::Format::Strptime->new(
pattern => '%d-%B-%Y'
);

my $input = '25-jan-2013';

my $todate = $parser->parse_datetime($input);

my $fromdate = $todate->clone;
$fromdate->subtract(days => 10);
say 'From: ', $fromdate->strftime('%d-%B-%Y');
say 'To: ', $todate->strftime('%d-%B-%Y');

关于perl - 在 perl 中,我如何从通过文本文件并在 dd-Month-YYYY(01-jan-1990) 中输出的日期中减去 10 天,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14643570/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com