使用perl获取上周数据的正则表达式

时间:2017-10-20 13:36:31

标签: regex perl regex-group

我有一个Perl脚本,它将在一个csv文件中生成一个输出。 Perl脚本基于每月提供输出并在每个星期四执行。请参阅我在perl脚本中添加的正则表达式。

'{"Date":{"\$regex":/^(0[1-9]|[12][0-9]|3[01])-10-2017/i}}'

但是一旦产生这个输出,我需要复制上周的数据(例如10月12日到18日)并需要发送给成员。所以我想以正确的方式表达,它会在上周发送一个基于输出的信息。(上周同时)

1 个答案:

答案 0 :(得分:1)

可以生成如下所示的正则表达式:

use strict;
use warnings;

use POSIX qw/strftime/;

my $now = time;

my @dates;
push @dates, strftime "%d-%m-%Y", localtime($now - $_ * 86_400 ) for (0..6);

my $regex_string = '(' . join( '|', @dates) . ')';

希望这对你有用

  

我知道人们可能会遇到的问题   它就在夏令时开始之后 - 如果   这确实是一个问题,然后迭代for循环13次,   步数为43.200秒,这是半天的减量。